Ps (Unix): Difference between revisions
m Task 70: Update syntaxhighlight tags - remove use of deprecated <source> tags |
mNo edit summary |
||
Line 1: | Line 1: | ||
{{manual|date=April 2020}} |
{{manual|date=April 2020}} |
||
{{refimprove|date=October 2017}} |
{{refimprove|date=October 2017}} |
||
{{Infobox |
{{Infobox software |
||
| name = ps |
| name = ps |
||
| logo = |
| logo = |
||
Line 12: | Line 12: | ||
| latest release version = |
| latest release version = |
||
| latest release date = |
| latest release date = |
||
| operating system = [[Unix]] |
| operating system = [[Unix]], [[Unix-like]], [[Plan 9 from Bell Labs|Plan 9]], [[KolibriOS]] |
||
| genre = [[Command (computing)|Command]] |
| genre = [[Command (computing)|Command]] |
||
| license = |
| license = |
||
Line 121: | Line 121: | ||
==External links== |
==External links== |
||
* {{man|cu|ps|SUS}} |
* {{man|cu|ps|SUS}} |
||
* {{man|1|ps|Plan 9}} |
|||
* [http://www.cyberciti.biz/faq/show-all-running-processes-in-linux/ Show all running processes in Linux using ps command] |
* [http://www.cyberciti.biz/faq/show-all-running-processes-in-linux/ Show all running processes in Linux using ps command] |
||
* [http://kb.iu.edu/data/afnv.html In Unix, what do the output fields of the ps command mean?] |
* [http://kb.iu.edu/data/afnv.html In Unix, what do the output fields of the ps command mean?] |
Revision as of 16:37, 19 July 2020
This article is written like a manual or guide. (April 2020) |
This article needs additional citations for verification. (October 2017) |
Original author(s) | AT&T Bell Laboratories |
---|---|
Developer(s) | Various open-source and commercial developers |
Initial release | February 1973 |
Operating system | Unix, Unix-like, Plan 9, KolibriOS |
Type | Command |
In most Unix and Unix-like operating systems, the ps
program (short for "process status") displays the currently-running processes. A related Unix utility named top provides a real-time view of the running processes.
In Windows PowerShell, ps
is a predefined command alias for the Get-Process
cmdlet, which essentially serves the same purpose.
KolibriOS includes an implementation of the ps
command.[1]
Examples
For example:
# ps
PID TTY TIME CMD
7431 pts/0 00:00:00 su
7434 pts/0 00:00:00 bash
18585 pts/0 00:00:00 ps
Users can also utilize the ps command in conjunction with the grep
command (see the pgrep and pkill commands) to find information about a single process, such as its id:
$ # Trying to find the PID of `firefox-bin` which is 2701
$ ps -A | grep firefox-bin
2701 ? 22:16:04 firefox-bin
The use of pgrep simplifies the syntax and avoids potential race conditions:
$ pgrep -l firefox-bin
2701 firefox-bin
To see every process running as root in user format:
# ps -U root -u
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
root 1 0.0 0.0 9436 128 - ILs Sun00AM 0:00.12 /sbin/init --
Breakdown
Column Header | Contents |
---|---|
%CPU | How much of the CPU the process is using |
%MEM | How much memory the process is using |
ADDR | Memory address of the process |
C or CP | CPU usage and scheduling information |
COMMAND* | Name of the process, including arguments, if any |
NI | nice value |
F | Flags |
PID | Process ID number |
PPID | ID number of the process's parent process |
PRI | Priority of the process |
RSS | Resident set size |
S or STAT | Process status code |
START or STIME | Time when the process started |
VSZ | Virtual memory usage |
TIME | The amount of CPU time used by the process |
TT or TTY | Terminal associated with the process |
UID or USER | Username of the process's owner |
WCHAN | Memory address of the event the process is waiting for |
* = Often abbreviated
Options
ps has many options. On operating systems that support the SUS and POSIX standards, ps commonly runs with the options -ef, where "-e" selects every process and "-f" chooses the "full" output format. Another common option on these systems is -l, which specifies the "long" output format.
Most systems derived from BSD fail to accept the SUS and POSIX standard options because of historical conflicts. (For example, the "e" or "-e" option will display environment variables.) On such systems, ps commonly runs with the non-standard options aux, where "a" lists all processes on a terminal, including those of other users, "x" lists all processes without controlling terminals and "u" adds a column for the controlling user for each process. For maximum compatibility, there is no "-" in front of the "aux". "ps auxww" provides complete information about the process, including all parameters.
See also
- Task manager
kill
- List of Unix commands
nmon
— a system monitor tool for the AIX and Linux operating systems.pgrep
pstree
top
lsof
References
- Shotts (Jr), William E. (2012). The Linux Command Line: A Complete Introduction. No Starch Press. pp. 96–98. ISBN 9781593273897. Retrieved 16 October 2017.
Further reading
- McElhearn, Kirk (2006). The Mac OS X Command Line: Unix Under the Hood. John Wiley & Sons. ISBN 978-0470113851.
External links
- The Single UNIX Specification, Version 4 from The Open Group – Shell and Utilities Reference,
- Plan 9 Programmer's Manual, Volume 1 –
- Show all running processes in Linux using ps command
- In Unix, what do the output fields of the ps command mean?