Exploring CLI Best Practices
Good and useful advice. Just one minor thing I'd change (copied from a comment that I posted there too):Don't use -v for version. It's very uncommon (though I know software that does it, it's confusing) and people will often blindly add -v for verbosity. A better alternative is -V (capitalized) and of course --version. These should both work, just like -h and --help should both work.