ps -ef vs ps aux
What is the difference between
ps -ef | grep thin
and
ps aux | grep thin
As per the output there is a variation but i'm not clear what are the things being listed.
Both list all processes of all users. In that aspect -e
and ax
are completely equivalent.
Where they differ is output format specifier, -f
is "full", while u
is "user-oriented". The displayed columns are different:
- columns for
ps -f
UID PID PPID C STIME TTY TIME CMD
- columns for
ps u
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
There are no differences in the output because the meanings are the same.
The difference between ps -ef
and ps aux
is due to historical divergences between POSIX and BSD systems. At the beginning, POSIX accepted the -ef
while the BSD accepted only the aux
form.
Today, both systems accept the two forms.