如何有效地添加linux命令选项?

时间:2018-04-02 21:59:20

标签: linux shell

我想知道如何在最后添加linux命令选项而不会出错。

例如

rm file1/ -r

cp file1/ file2/ -r

我经历过一些Linux集群系统可以做到这一点,其他公共汽车也做不到。

正如搜索到的那样,getopts命令可能会有所帮助,但我不确定getopts是否是最佳选择,并且(也不确定如何实现我的目的)。

我是否需要按命令自定义命令,还是可以应用任何命令的更通用的解决方案?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

考虑这个命令:

rm -f myfile -r -- -i

GNU标志惯例是允许任何地方的选项,直到可选的--来指示"选项结束"。随后的程序会看到选项-r-f,以及参数myfile-i

BSD标志约定是只允许标志直到第一个非标志参数,或者直到可选--为止。在其后面的程序会看到选项-f,加上参数myfile-r---i

POSIX只需要实用程序来支持BSD样式。

由各个程序决定如何解释标志。如果你使用像FreeBSD或macOS这样的BSD风格系统,你可以安装GNU工具并使用它们。如果你不能,那么你大多坚持使用系统的旗帜惯例。