You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.6 KiB

From 1694ab2ab3628cead18ba7aa59e134e80675c601 Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur@redhat.com>
Date: Fri, 30 Nov 2018 11:50:34 -0500
Subject: [PATCH 1/2] python-linux-procfs: pflags: Use argparse to create a
help option
The purpose of this change is to create a -h or --help option.
In addition the handling of pids or process names is improved. Instead of a
command separated list (without spaces), the more standard unix way of
space separated command line arguments are used.
This is explained in the help.
./pflags -h
usage: pflags [-h] [pid [pid ...]]
Print process flags
positional arguments:
pid a list of pids or names
optional arguments:
-h, --help show this help message and exit
Signed-off-by: John Kacur <jkacur@redhat.com>
---
pflags-cmd.py | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/pflags-cmd.py b/pflags-cmd.py
index 9228c688e7a2..f180ed505977 100755
--- a/pflags-cmd.py
+++ b/pflags-cmd.py
@@ -15,6 +15,7 @@
# General Public License for more details.
import procfs, re, fnmatch, sys
+import argparse
ps = None
@@ -35,8 +36,13 @@ def main(argv):
global ps
ps = procfs.pidstats()
+ parser = argparse.ArgumentParser(description='Print process flags')
+ parser.add_argument('pid', nargs='*', help='a list of pids or names')
+ args = parser.parse_args()
+
if (len(argv) > 1):
- pids = reduce(lambda i, j: i + j, map(thread_mapper, argv[1].split(",")))
+ pids = args.pid
+ pids = reduce(lambda i, j: i + j, list(map(thread_mapper, pids)))
else:
pids = ps.processes.keys()
--
2.19.2