ps Cheatsheet
Basic Syntax
Core ps command forms.
| Command | Description |
|---|---|
ps |
Show processes in the current shell |
ps -e |
Show all running processes |
ps -f |
Show full-format output |
ps aux |
BSD-style all-process listing with user and resource info |
ps -ef |
SysV-style all-process listing |
List Processes
Common process listing commands.
| Command | Description |
|---|---|
ps -e |
List all processes |
ps -ef |
Full process list with PPID and start time |
ps aux |
Detailed list including CPU and memory usage |
ps -u username |
Processes owned by a specific user |
ps -p 1234 |
Show one process by PID |
Select and Filter
Filter output to specific process groups.
| Command | Description |
|---|---|
ps -C nginx |
Match processes by command name |
ps -p 1234,5678 |
Show multiple PIDs |
ps -u root -U root |
Show processes by effective and real user |
ps -t pts/0 |
Show processes attached to a terminal |
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu |
Custom output sorted by CPU |
Custom Output Columns
Show only the process fields you need.
| Command | Description |
|---|---|
ps -eo pid,cmd |
PID and command |
ps -eo user,pid,%cpu,%mem,cmd |
User, PID, CPU, memory, command |
ps -eo pid,lstart,cmd |
PID with full start time |
ps -o pid= -o comm= |
Output without column headers |
ps -p 1234 -o pid,ppid,user,%cpu,%mem,cmd |
Custom fields for one PID |
Process Tree and Parent/Child
Inspect process hierarchy.
| Command | Description |
|---|---|
ps -ejH |
Hierarchical process view |
ps -axjf |
Forest view (BSD style) |
ps -o pid,ppid,cmd -p 1234 |
Parent-child context for one process |
ps -eo pid,ppid,cmd --sort=ppid |
Group processes by parent PID |
Useful Patterns
Common real-world combinations.
| Command | Description |
|---|---|
| `ps aux | grep nginx` |
ps -C nginx -o pid,cmd |
Cleaner command-name search without grep |
| `ps -eo pid,%cpu,%mem,cmd –sort=-%mem | head` |
| `ps -eo pid,%cpu,cmd –sort=-%cpu | head` |
| `ps -ef | grep -v grep |
Troubleshooting
Quick checks for common ps usage issues.
| Issue | Check |
|---|---|
| Command not visible in output | Use ps -ef or ps aux for full list |
| Process disappears between checks | It may be short-lived; sample repeatedly or use watch |
grep shows itself |
Use ps -C name or pgrep instead of raw grep |
| Missing expected process details | Add fields with -o (for example %cpu, %mem, lstart) |
| Need exact process ID for kill | Use ps -C name -o pid= or pgrep name |
Related Guides
Use these guides for full process-management workflows.
| Guide | Description |
|---|---|
Ps Command in Linux
|
Full ps guide with examples |
Kill Command in Linux
|
Terminate processes by PID |
Pkill Command in Linux
|
Kill processes by name/pattern |
Pgrep Command in Linux
|
Find process IDs by name and pattern |
How to Kill a Process in Linux
|
Practical process-stop workflow |
