diff options
Diffstat (limited to 'misc-utils/getoptprog.c')
-rw-r--r-- | misc-utils/getoptprog.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/misc-utils/getoptprog.c b/misc-utils/getoptprog.c new file mode 100644 index 000000000..03b0987ef --- /dev/null +++ b/misc-utils/getoptprog.c @@ -0,0 +1,30 @@ +#include <stdio.h> + +main(argc, argv) +int argc; +char *argv[]; +{ + extern int optind; + extern char *optarg; + int c; + int status = 0; + + optind = 2; /* Past the program name and the option letters. */ + while ((c = getopt(argc, argv, argv[1])) != EOF) + switch (c) { + case '?': + status = 1; /* getopt routine gave message */ + break; + default: + if (optarg != NULL) + printf(" -%c %s", c, optarg); + else + printf(" -%c", c); + break; + } + printf(" --"); + for (; optind < argc; optind++) + printf(" %s", argv[optind]); + printf("\n"); + exit(status); +} |