Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP2:GA
procps
bsc901202-add-better-help-output.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bsc901202-add-better-help-output.patch of Package procps
pgrep.c | 39 +++++++++++++++++++-------------------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git pgrep.c pgrep.c index d8d3dcb..3ba3634 100644 --- pgrep.c +++ pgrep.c @@ -106,6 +106,7 @@ static int __attribute__ ((__noreturn__)) usage(int opt) if (i_am_pkill == 0) { fputs(_(" -d, --delimiter <string> specify output delimiter\n"),fp); fputs(_(" -l, --list-name list PID and process name\n"),fp); + fputs(_(" -a, --list-full list PID and full command line\n"),fp); fputs(_(" -v, --inverse negates the matching\n"),fp); fputs(_(" -w, --lightweight list all TID\n"), fp); } @@ -137,7 +138,7 @@ static int __attribute__ ((__noreturn__)) usage(int opt) fputs(USAGE_VERSION, fp); fprintf(fp, USAGE_MAN_TAIL("pgrep(1)")); - exit(fp == stderr ? EXIT_FAILURE : EXIT_SUCCESS); + exit(fp == stderr ? EXIT_USAGE : EXIT_SUCCESS); } static struct el *split_list (const char *restrict str, int (*convert)(const char *, struct el *)) @@ -628,7 +629,7 @@ static struct el * select_procs (int *num) if (list == NULL) exit (EXIT_FATAL); } - if (opt_long) { + if (opt_long || opt_longlong) { list[matches].str = xstrdup (cmdoutput); list[matches++].num = subtask.XXXID; } else { @@ -747,7 +748,7 @@ static void parse_opts (int argc, char **argv) case 'G': /* Solaris: match rgid/rgroup */ opt_rgid = split_list (optarg, conv_gid); if (opt_rgid == NULL) - usage (opt); + usage ('?'); ++criteria_count; break; /* case 'I': / * FreeBSD: require confirmation before killing * / @@ -764,7 +765,7 @@ static void parse_opts (int argc, char **argv) case 'P': /* Solaris: match by PPID */ opt_ppid = split_list (optarg, conv_num); if (opt_ppid == NULL) - usage (opt); + usage ('?'); ++criteria_count; break; /* case 'S': / * FreeBSD: don't ignore the built-in kernel tasks * / @@ -774,7 +775,7 @@ static void parse_opts (int argc, char **argv) case 'U': /* Solaris: match by ruid/rgroup */ opt_ruid = split_list (optarg, conv_uid); if (opt_ruid == NULL) - usage (opt); + usage ('?'); ++criteria_count; break; case 'V': @@ -794,7 +795,7 @@ static void parse_opts (int argc, char **argv) case 'g': /* Solaris: match pgrp */ opt_pgrp = split_list (optarg, conv_pgrp); if (opt_pgrp == NULL) - usage (opt); + usage ('?'); ++criteria_count; break; /* case 'i': / * FreeBSD: ignore case. OpenBSD: withdrawn. See -I. This sucks. * / @@ -812,37 +813,37 @@ static void parse_opts (int argc, char **argv) break; case 'n': /* Solaris: match only the newest */ if (opt_oldest|opt_negate|opt_newest) - usage (opt); + usage ('?'); opt_newest = 1; ++criteria_count; break; case 'o': /* Solaris: match only the oldest */ if (opt_oldest|opt_negate|opt_newest) - usage (opt); + usage ('?'); opt_oldest = 1; ++criteria_count; break; case 's': /* Solaris: match by session ID -- zero means self */ opt_sid = split_list (optarg, conv_sid); if (opt_sid == NULL) - usage (opt); + usage ('?'); ++criteria_count; break; case 't': /* Solaris: match by tty */ opt_term = split_list (optarg, conv_str); if (opt_term == NULL) - usage (opt); + usage ('?'); ++criteria_count; break; case 'u': /* Solaris: match by euid/egroup */ opt_euid = split_list (optarg, conv_uid); if (opt_euid == NULL) - usage (opt); + usage ('?'); ++criteria_count; break; case 'v': /* Solaris: as in grep, invert the matching (uh... applied after selection I think) */ if (opt_oldest|opt_negate|opt_newest) - usage (opt); + usage ('?'); opt_negate = 1; break; case 'w': // Linux: show threads (lightweight process) too @@ -857,25 +858,23 @@ static void parse_opts (int argc, char **argv) case NS_OPTION: opt_ns_pid = atoi(optarg); if (opt_ns_pid == 0) - usage (opt); + usage ('?'); ++criteria_count; break; case NSLIST_OPTION: opt_nslist = split_list (optarg, conv_ns); if (opt_nslist == NULL) - usage (opt); + usage ('?'); break; case 'h': - usage (opt); - break; case '?': - usage (optopt ? optopt : opt); + usage (opt); break; } } if(opt_lock && !opt_pidfile) - xerrx(EXIT_FAILURE, _("-L without -F makes no sense\n" + xerrx(EXIT_USAGE, _("-L without -F makes no sense\n" "Try `%s --help' for more information."), program_invocation_short_name); @@ -890,11 +889,11 @@ static void parse_opts (int argc, char **argv) if (argc - optind == 1) opt_pattern = argv[optind]; else if (argc - optind > 1) - xerrx(EXIT_FAILURE, _("only one pattern can be provided\n" + xerrx(EXIT_USAGE, _("only one pattern can be provided\n" "Try `%s --help' for more information."), program_invocation_short_name); else if (criteria_count == 0) - xerrx(EXIT_FAILURE, _("no matching criteria specified\n" + xerrx(EXIT_USAGE, _("no matching criteria specified\n" "Try `%s --help' for more information."), program_invocation_short_name); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor