By CLI, I mean any executable program or script like git that supports commands, sub-commands, and POSIX-style flags.
I mostly work in Go, and have been happy with the standard library[1] or Cobra[2]. I also write a lot of shell scripts.
I thought it would be interesting to see some other approaches.
[1]: https://pkg.go.dev/flag [2]: https://cobra.dev
1) Extract details for command options from man/help: https://github.com/learnbyexample/command_help/blob/master/c...
2) cut-like syntax for field manipulations with regexp, negative indexing, etc: https://github.com/learnbyexample/regexp-cut/blob/main/rcut
3) Simple calculator using python syntax: https://learnbyexample.github.io/practice_python_projects/ca...
If you want something like bash, just use bash. If you want a CLI in a GUI environment, just use 'terminal', or'xterm' or similar.
If you're talking about apps that run in a CLI, then the world is your oyster. Use whatever you need depending on what the app requires.
If you're talking about what language to use, then just use which ever language that you're comfortable with that can/will produce a text output.
fx is a workspace tool manager. It allows you to create consistent, discoverable, language-neutral and developer friendly command line tools.
Check out the libraries from charm (charm.sh). They really make the command line glamorous!
Go + Cobra
Python + Click
5% shell.
previously lots of perl