什么叫“-”?


23

最近,我知道--这是双连字符,它用于告诉命令选项列表已结束,并且以下内容不应被视为选项。所以,

grep --  'search_word' *

会搜索给定的search_word。但是,如果删除--并且有一个以开头的文件,则可能会出现意外的行为-,这将打开与filename中的字符匹配的选项。

这叫什么--?有什么技术术语吗?


3
参见有关为什么unix头说“减”的辩论然后加倍。
manatwork 2012年

@manatwork不,平方它!我们应该说“减破折号”还是“破折号减号”?
吉尔(Gilles)'所以

我只是说“-”。
dubiousjim 2013年

我遇到规律性cd --cd -现象。while cd --本质上意味着公正cd,因此更改为您$HOMEcd -意味着将您自己放入先前的目录。当您愿意时,这会变cd ..得很方便,但是与德语键盘布局一样,我经常将其与混合使用cd --cd -然后会把你放回去。:D
数学

Answers:


15

--工具适用于用于getopt(3)处理命令行参数的工具以及用于解析POSIX样式选项的许多API。

在以下页面的手册中getopt(3)

参数列表中选项的解释可以通过选项'-'(双破折号)取消,这会使getopt()发出参数处理结束的信号并返回-1。

我会说这叫做双破折号


但是我敢打赌,这有一个语言术语。
罗布2012年

3
getopt并不是唯一支持“-”的API。大多数以大多数语言解析POSIX样式选项的API都支持它。所有POSIX工具,但echo[支持它
斯特凡Chazelas

@StephaneChazelas感谢我编辑了答案
Matteo

5

我在实践中遇到的仅有的两个名字是“双破折号”,从美学上讲它;和“选项结束”,从功能上讲


我也看到它也被称为“最后选择”。
蒂姆·肯尼迪
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.