Answers:
这是惯例问题。POSIX标准程序通常只有单个字符选项,并且都以单个连字符作为前缀。就我所知,较长的版本是GNU的改进,为了清楚起见,通常以双连字符开头。-您可以在库中,并用于解析方式选择方案看到这getopt
和gnu-getopt
分别。不符合GNU和不符合POSIX的程序可能会完全做其他事情。请注意,您确实不能确定参数的长格式在程序之间可能是相同的。-f
通常表示--force
,但不是apt-get install
(常见的误解)。-v
可能表示版本-通常为或--verbose
,以此类推。检查手册页或其他文档以确保。也看看维基百科有关getopt的文章。所有这些都比Linux早了十年或更长时间。
dd
是一个例子一POSIX标准实用程序不具有任何连字符的选择,在所有。find
是POSIX标准实用程序的经典示例,该实用程序的单词选项带有单个连字符-几乎所有find
的选项都包含多个字符。ps
支持多种选项样式:
This version of ps accepts several kinds of options:
1 UNIX options, which may be grouped and must be preceded by a dash.
2 BSD options, which may be grouped and must not be used with a dash.
3 GNU long options, which are preceded by two dashes.
GNUtar
还支持多种选项样式。
作为使用的问题,如果可以确保脚本将在兼容的环境中运行,则最好使用脚本中的长选项-调试时可以提高清晰度。为了便于携带,首选短选项。