diff options
author | Giampaolo Rodola <g.rodola@gmail.com> | 2017-04-26 21:30:59 +0200 |
---|---|---|
committer | Giampaolo Rodola <g.rodola@gmail.com> | 2017-04-26 21:30:59 +0200 |
commit | 888eebfd4fecfaf936838a2055496485e2af8b65 (patch) | |
tree | 2769b30da7c960cae46e79b3584cce03e7eaa1f3 /scripts/pidof.py | |
parent | bde13c410bd0e266d49ad1e24ae3b78dba571e29 (diff) | |
download | psutil-888eebfd4fecfaf936838a2055496485e2af8b65.tar.gz |
#1025: take advantage of process_iter(attrs) in scripts
Diffstat (limited to 'scripts/pidof.py')
-rwxr-xr-x | scripts/pidof.py | 25 |
1 files changed, 5 insertions, 20 deletions
diff --git a/scripts/pidof.py b/scripts/pidof.py index 1c23900f..bcb8a2e6 100755 --- a/scripts/pidof.py +++ b/scripts/pidof.py @@ -18,26 +18,11 @@ import sys def pidof(pgname): pids = [] - for proc in psutil.process_iter(): - with proc.oneshot(): - # search for matches in the process name and cmdline - try: - name = proc.name() - except psutil.Error: - pass - else: - if name == pgname: - pids.append(str(proc.pid)) - continue - - try: - cmdline = proc.cmdline() - except psutil.Error: - pass - else: - if cmdline and cmdline[0] == pgname: - pids.append(str(proc.pid)) - + for proc in psutil.process_iter(attrs=['name', 'cmdline']): + # search for matches in the process name and cmdline + if proc.info['name'] == pgname or \ + proc.info['cmdline'] and proc.info['cmdline'][0] == pgname: + pids.append(str(proc.pid)) return pids |