123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- This is what POSIX 2003 says about ps:
- By default, ps shall select all processes with the same effective user
- ID as the current user and the same controlling terminal as the invoker
- ps [-aA][-defl][-G grouplist][-o format]...[-p proclist][-t termlist]
- [-U userlist][-g grouplist][-n namelist][-u userlist]
- -a Write information for all processes associated with terminals.
- Implementations may omit session leaders from this list.
- -A Write information for all processes.
- -d Write information for all processes, except session leaders.
- -e Write information for all processes. (Equivalent to -A.)
- -f Generate a full listing. (See the STDOUT section for the con-
- tents of a full listing.)
- -g grouplist
- Write information for processes whose session leaders are given
- in grouplist. The application shall ensure that the grouplist is
- a single argument in the form of a <blank> or comma-separated
- list.
- -G grouplist
- Write information for processes whose real group ID numbers are
- given in grouplist. The application shall ensure that the grou-
- plist is a single argument in the form of a <blank> or comma-
- separated list.
- -l Generate a long listing. (See STDOUT for the contents of a long
- listing.)
- -n namelist
- Specify the name of an alternative system namelist file in place
- of the default. The name of the default file and the format of a
- namelist file are unspecified.
- -o format
- Write information according to the format specification given in
- format. Multiple -o options can be specified; the format speci-
- fication shall be interpreted as the <space>-separated concate-
- nation of all the format option-arguments.
- -p proclist
- Write information for processes whose process ID numbers are
- given in proclist. The application shall ensure that the pro-
- clist is a single argument in the form of a <blank> or comma-
- separated list.
- -t termlist
- Write information for processes associated with terminals given
- in termlist. The application shall ensure that the termlist is a
- single argument in the form of a <blank> or comma-separated
- list. Terminal identifiers shall be given in an implementation-
- defined format. On XSI-conformant systems, they shall be
- given in one of two forms: the device's filename (for example,
- tty04) or, if the device's filename starts with tty, just the
- identifier following the characters tty (for example, "04" ).
- -u userlist
- Write information for processes whose user ID numbers or login
- names are given in userlist. The application shall ensure that
- the userlist is a single argument in the form of a <blank> or
- comma-separated list. In the listing, the numerical user ID
- shall be written unless the -f option is used, in which case the
- login name shall be written.
- -U userlist
- Write information for processes whose real user ID numbers or
- login names are given in userlist. The application shall ensure
- that the userlist is a single argument in the form of a <blank>
- or comma-separated list.
- With the exception of -o format, all of the options shown are used to
- select processes. If any are specified, the default list shall be
- ignored and ps shall select the processes represented by the inclusive
- OR of all the selection-criteria options.
- The -o option allows the output format to be specified under user con-
- trol.
- The application shall ensure that the format specification is a list of
- names presented as a single argument, <blank> or comma-separated. Each
- variable has a default header. The default header can be overridden by
- appending an equals sign and the new text of the header. The rest of
- the characters in the argument shall be used as the header text. The
- fields specified shall be written in the order specified on the command
- line, and should be arranged in columns in the output. The field widths
- shall be selected by the system to be at least as wide as the header
- text (default or overridden value). If the header text is null, such as
- -o user=, the field width shall be at least as wide as the default
- header text. If all header text fields are null, no header line shall
- be written.
- ruser The real user ID of the process. This shall be the textual user
- ID, if it can be obtained and the field width permits, or a dec-
- imal representation otherwise.
- user The effective user ID of the process. This shall be the textual
- user ID, if it can be obtained and the field width permits, or a
- decimal representation otherwise.
- rgroup The real group ID of the process. This shall be the textual
- group ID, if it can be obtained and the field width permits, or
- a decimal representation otherwise.
- group The effective group ID of the process. This shall be the textual
- group ID, if it can be obtained and the field width permits, or
- a decimal representation otherwise.
- pid The decimal value of the process ID.
- ppid The decimal value of the parent process ID.
- pgid The decimal value of the process group ID.
- pcpu The ratio of CPU time used recently to CPU time available in the
- same period, expressed as a percentage. The meaning of
- "recently" in this context is unspecified. The CPU time avail-
- able is determined in an unspecified manner.
- vsz The size of the process in (virtual) memory in 1024 byte units
- as a decimal integer.
- nice The decimal value of the nice value of the process; see nice() .
- etime In the POSIX locale, the elapsed time since the process was
- started, in the form: [[dd-]hh:]mm:ss
- time In the POSIX locale, the cumulative CPU time of the process in
- the form: [dd-]hh:mm:ss
- tty The name of the controlling terminal of the process (if any) in
- the same format used by the who utility.
- comm The name of the command being executed ( argv[0] value) as a
- string.
- args The command with all its arguments as a string. The implementa-
- tion may truncate this value to the field width; it is implemen-
- tation-defined whether any further truncation occurs. It is
- unspecified whether the string represented is a version of the
- argument list as it was passed to the command when it started,
- or is a version of the arguments as they may have been modified
- by the application. Applications cannot depend on being able to
- modify their argument list and having that modification be
- reflected in the output of ps.
- Any field need not be meaningful in all implementations. In such a case
- a hyphen ( '-' ) should be output in place of the field value.
- Only comm and args shall be allowed to contain <blank>s; all others
- shall not.
- The following table specifies the default header to be used in the
- POSIX locale corresponding to each format specifier.
- Format Specifier Default Header Format Specifier Default Header
- args COMMAND ppid PPID
- comm COMMAND rgroup RGROUP
- etime ELAPSED ruser RUSER
- group GROUP time TIME
- nice NI tty TT
- pcpu %CPU user USER
- pgid PGID vsz VSZ
- pid PID
- There is no special quoting mechanism for header text. The header text
- is the rest of the argument. If multiple header changes are needed,
- multiple -o options can be used, such as:
- ps -o "user=User Name" -o pid=Process\ ID
|