这比任何语言或解析器更重要的是程序的调用(尽管我确定解析器库的选择可以取决于此)。看,我已经使用了很多Linux命令行实用程序。并且有一些明显的模式。对于短选项,’-‘之前是单个字母,可以组合多个不带参数的选项,’-‘在长版本的选项之前,依此类推。
但是,在某些情况下,大写字母用于 反转 期权。所以,“-D”可能意味着作为守护程序运行,但“-D”将 不 作为后台进程运行。(为什么不不想就不选择该选项呢?这从来都不是很清楚,但是实际上很普遍,所以我认为必须有一些原因。)但是在某些程序中,大写字母是完全不相关的选择。如果“ -d”作为守护程序运行,则“ -D”可能会启用调试模式。这背后是否有某种总体原则,哪个是最佳选择?还是我们只是在处理“一切正常”?
除了带有参数的选项(或代替带有参数的选项)外,还有一些命令仅接受单独的参数。cp是一个很好的例子。除了几个很少使用的切换以外,它接收到的最后一个参数被假定为目标,并且选项列表和目标之间的所有参数被假定为源。如果可以这样依赖顺序,而不是使用带有参数的显式选项标志,是否有经验法则?
通常,是的。