A server is short of memory and you want a process list whose heaviest memory consumers appear first. Which command produces that ordering directly from ps?
LPIC-1 Exam 101-500, objective 103. GNU and Unix commands medium
Machine-checked — no person has signed for it. This question was read against the source cited below by an automated pass, which found no contradiction. That is a weaker claim than it sounds: the same kind of process wrote the question, so it can confirm its own mistake.
Treat it as a good draft rather than as settled fact, and read the source below before you rely on it. It is not used in mock exams here — only questions a person has signed for are.
How these questions are written — where each question comes from, what the verification ledger records, and what happens when one is found wrong.
The options
Correct ps -eo pid,comm,%mem --sort=-%mem
Correct. --sort takes a field name, and a leading minus reverses it, so the largest %mem values come first.
Not correct ps -eo pid,comm,%mem --sort=%mem
Wrong direction. Without the minus the sort is ascending, so the processes using the least memory are printed first and the interesting ones are at the bottom.
Not correct ps -eo pid,comm,%mem | sort -r
Wrong. sort works on the first column, which is the PID, and compares it as text. The header line is sorted along with the data.
Not correct ps -eo pid,comm,%mem --order=mem
Wrong. ps has no --order option; the sort specification option is --sort (or the BSD-style k).
Why
ps can both select and sort: -e (or ax) selects every process, -o gives an explicit output format from named fields such as pid, ppid, comm, %cpu, %mem and rss, and --sort orders the result by one of those fields. A leading minus on the sort key means descending, a leading plus or nothing means ascending. Sorting inside ps is more reliable than piping to sort, which sees only text columns and the header.
Where this comes from
- Cited
- manual page ps(1)
Practise this
Reading one question is not practice. The trainer will draw a short set from objective 103 and space the ones you get wrong.
More questions on this objective
- A user starts a new terminal window in a running graphical desktop session, which launches bash as an interactive shell that is NOT a login shell. Which file in the user's home directory does bash read in that case? machine-checked
- In bash, which history expansion re-runs the entire previous command line? machine-checked
- Which bash command prints the literal five characters $USER instead of the current user name? machine-checked
- You want /opt/bin searched for executables, after all the directories already in PATH, in the current bash session and in every command started from it. Which command does that? machine-checked
- There is a passwd manual page in section 1 (the command) and another in section 5 (the /etc/passwd file format). Which command opens the section 5 page? machine-checked
- Select the TWO true statements about shell variables and the environment in bash. machine-checked