What does the following command line produce? Explain each
aspect of this line.
$ (date ; ps -ef | awk {print $1}' | sort | uniq | wc -l )
>> Activity.log
Answer Posted / daniel
First let's dissect the line: The date gives the date and
time as the first command of the line, this is followed by
the a list of all running processes in long form with UIDs
listed first, this is the ps -ef. These are fed into the awk
which filters out all but the UIDs; these UIDs are piped
into sort for no discernible reason and then onto uniq (now
we see the reason for the sort - uniq only works on sorted
data - if the list is A, B, A, then A, B, A will be the
output of uniq, but if it's A, A, B then A, B is the output)
which produces only one copy of each UID. These UIDs are fed
into wc -l which counts the lines - in this case the number
of distinct UIDs running processes on the system. Finally
the results of these two commands, the date and the wc -l,
are appended to the file "Activity.log". Now to answer the
question as to what this command line produces. This writes
the date and time into the file Activity.log together with
the number of distinct users who have processes running on
the system at that time. If the file already exists, then
these items are appended to the file, otherwise the file is
created.
| Is This Answer Correct ? | 4 Yes | 0 No |
Post New Answer View All Answers
How do you save a file in linux?
What is nbtstat command?
What is clang space engineers?
What is mkdir p linux?
What is command grouping?
How do you know which shell I am using in linux?
How do I use nslookup in linux?
What are linux commands useful?
What are the basic commands for user management?
What is the command to see on which port which service is running?
What is option in linux command?
What is a ulimit in unix?
How find ip address linux?
What is devops linux?
How many interfaces(ethernet cards) are working using single command?