pgrep

From Wikipedia, the free encyclopedia

Template:Short description

Page Module:Infobox/styles.css has no content.

pgrep
[[Programmer|Original authorTemplate:Pluralize from text]]Mike Shapiro
Template:Infobox software/simple
EnginePage Template:Plainlist/styles.css has no content.Template:EditAtWikidata
Operating systemUnix and Unix-like
TypeCommand
WebsiteScript error: No such module "WikidataIB".
RepositoryPage Template:Plainlist/styles.css has no content.

Script error: No such module "Check for conflicting parameters".

pgrep is a command-line utility initially written for use with the Solaris 7 operating system by Mike Shapiro. It has since been available in illumos and reimplemented for the Linux and BSDs (DragonFly BSD, FreeBSD, NetBSD, and OpenBSD). It searches for all the named processes that can be specified as extended regular expression patterns, and—by default—returns their process ID. Alternatives include pidof (finds process ID given a program name) and ps.

Example usage

The default behaviour of pgrep (returning the process identifier of the named tasks) simplifies an otherwise complex task and is invoked with:

$ pgrep 'bash'

Which is roughly equivalent to:

$ ps ax | awk '{sub(/.*\//, "", $5)} $5 ~ /bash/ {print $1}'

Additional functionality of pgrep is listing the process name as well as the PID (-l Lists the process name as well as the process ID) of all processes belonging to the group alice (-G Only match processes whose real group ID is listed. Either the numerical or symbolical value may be used):

$ pgrep -l -G alice

showing all processes that do not belong to the user root (-u euid Only match processes whose effective user ID is listed. Either the numerical or symbolical value may be used) by inverting the matching (-v Negates the matching):

$ pgrep -v -u root

and only matching the most recently started process (-n Select only the newest (most recently started) of the matching processes):

$ pgrep -n                # The most recent process started
$ pgrep -n -u alice emacs # The most recent `emacs` process started by user `alice`

See also

Lua error in mw.title.lua at line 404: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

  • List of Unix commands
  • pidof — find the process ID of running programs
  • pkill — signal processes based on name and other attributes
  • ps — display the currently running processes
  • grep — search for lines of text that match one or many regular expressions

References

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.