diff options
author | Leah Neukirchen <leah@vuxu.org> | 2020-04-03 20:13:18 +0200 |
---|---|---|
committer | Leah Neukirchen <leah@vuxu.org> | 2020-04-03 20:13:18 +0200 |
commit | 34a9899d1156f15de106b42250aa78d411c685e6 (patch) | |
tree | 79c2f0e4e072132aa993148a48f1327e3616d1b2 | |
parent | 8890ca1e25f649965ff3dd4643b70ff2c3848f18 (diff) | |
download | px-34a9899d1156f15de106b42250aa78d411c685e6.tar.gz px-34a9899d1156f15de106b42250aa78d411c685e6.tar.xz px-34a9899d1156f15de106b42250aa78d411c685e6.zip |
add search by numeric pid
-rw-r--r-- | px.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/px.c b/px.c index 877baee..bf74d51 100644 --- a/px.c +++ b/px.c @@ -9,6 +9,7 @@ #include <sys/auxv.h> #include <sys/sysinfo.h> +#include <ctype.h> #include <stdint.h> #include <stdio.h> #include <stdlib.h> @@ -75,9 +76,19 @@ main(int argc, char *argv[]) proc_t *p = *result; if (argc > 1) { - for (int i = 1; i < argc; i++) + for (int i = 1; i < argc; i++) { + for (size_t j = 0; j < strlen(argv[i]); j++) { + if (!isdigit(argv[i][j])) + goto word; + } + if (p->tid == atoi(argv[i])) + goto match; + else + continue; +word: if (strstr(p->cmd, argv[i])) goto match; + } continue; match: matched++; |