在我的测试中(在Bash和Z shell中),我发现在定义函数、别名或可执行的shell脚本时没有问题,这些脚本的名称中都有连字符,但我不相信这在所有shell和所有用例中都是可以的。
我想这样做的原因是连字符比下划线更容易输入,因此速度更快、更流畅。
我不敢相信这不是问题的一个原因是,在某些语言(例如Ruby)中连字符即使没有空格也会被解释为负号。如果这样的事情可能发生在某些shell中,即使没有空格,连字符也会被解释为表示选项的信号,这并不让我感到惊讶。
我有点怀疑的另一个原因是我的文本编辑器搞砸了连字符函数的语法高亮显示。(当然,这完全有可能只是它的语法中的一个错误,突出显示shell脚本的配置。)
有什么理由避免连字符吗?
发布于 2016-04-05 18:40:24
我知道现在已经很晚了,但也许您可以解决使下划线更容易访问的问题。
xmodmap -e "keycode 20 = underscore minus"这将用连字符(减号)切换下划线。
所以,现在,您保留shift表示连字符,但是下划线是没有shift类型的。
你的键码可能不一样,但是,我想这取决于你的键盘;我的键盘正好是20。如果你需要帮助找出你需要使用的键码,请告诉我。
https://unix.stackexchange.com/questions/168221
复制相似问题