I have been working on my scripts for user/group permissions today. This idea has been on my back burner for awhile. I’m sure others have done this before. I just haven’t encountered them yet.
I was thinking of just trying to find the flags where they start a line and put everything in a string array until the next line that starts with a flag. Then I would just call the script with the command, a loop would match the flags and print the matches.
Inspired by explainshell, I wrote a script (https://github.com/learnbyexample/command_help) to be used from the terminal itself. It is a bit buggy, but works well most of the time. For example:
$ ch grep -Ao grep - print lines that match patterns -A NUM, --after-context=NUM Print NUM lines of trailing context after matching lines. Places a line containing a group separator (--) between contiguous groups of matches. With the -o or --only-matching option, this has no effect and a warning is given. -o, --only-matching Print only the matched (non-empty) parts of a matching line, with each such part on a separate output line.
omg that is lovely. Kinda like https://regex101.com/ for regular expressions.
deleted by creator
you’re probably looking for getopt/getopts. one big difference between them is getopt handles --long options while getopt doesn’t.