procs
Overview
procs is a modern replacement for ps written in Rust, with colorized output, tree views, keyword highlighting, and friendlier defaults. Optional install (cargo install procs, distro packages). Keep ps for portability and scripts.
Syntax
procs [options] [query...]
procs --helpCommon Options
| Option | Description |
|---|---|
-a, --and |
All keywords must match |
-o, --or |
Any keyword (default-ish behavior depends version) |
-d, --tree |
Tree view |
-w, --watch |
Watch mode refresh |
-p, --pager |
Use pager |
--sortd KEY / --sorta KEY |
Sort descending/ascending |
--only COL |
Show specific columns |
--insert COL |
Add columns |
--json |
JSON output |
--color |
Color mode |
query |
Filter by keyword (command, user, …) |
Flags evolve quickly — check procs --help for your version.
Examples with Explanations
Everyday
procs
procs nginx
procs alice
procs --tree
procs -wSorting
procs --sortd cpu
procs --sortd mem
procs --sorta pidColumns
procs --only pid,user,cmd
procs --insert tcp,udpJSON for tooling
procs --json nginx | jq .Compare with ps
ps aux | head
procs
ps -fp $(pgrep -d, nginx)
procs nginxWatch like top (lightweight)
procs -w
# or
watch -n1 procs --sortd cpuNotes / Pitfalls
- Not installed by default on servers — don’t require it in production scripts.
- Keyword filtering is convenience, not a security boundary.
- Column names differ from
ps— learn the map once. - JSON schema may change across versions; pin version in automation.
- Permissions still limit visibility of other users’ full command lines.
2026-relevant notes
- Part of the modern CLI set with
bat,eza,fd,rg,btop. - For portable ops docs, show
psequivalents alongsideprocs. - Prefer
pgrep/systemctlfor scripting; useprocsinteractively.
Additional Resources
procs --help- dalance/procs