编写一个友好的命令行工具

Yiran at 
背景关于命令行设计的一点总结。有用的帮助信息提供的命令行中所有的命令、子命令、选项都有明确的帮助信息,便于用户在使用过程中查看。帮助信息查看方式最好统一,比如统一使用 -h 格式、 COMMAND help 或者 COMMAND --help 。尽量使用 Flags 而不是 Args 命令行可以接受 2 种类型的参数输入:Flags 和 Args。Flags 需要更多的输入,但会使命令行更清晰。我在实现一个命令行时,通常会将必选项设置为 Args ,将可选项设置为 Flags,但是有时候会导致用户在使用过程中觉得传递参数方式不统一,而且当 Args 有多个时(是的,我之前设计的一个命令行输入的……