大多数语言都有变量的命名约定,我在 shell 脚本中看到的最常见的样式是MY_VARIABLE=foo
.这是约定还是仅适用于全局变量?脚本的本地变量怎么样?
答案1
操作系统引入的环境变量或shell变量、shell启动脚本或shell本身等通常都在CAPITALS
1中。
为了防止您的变量与这些变量发生冲突,最好使用lower_case
变量名称。
1一个可能值得了解的值得注意的例外是shellpath
使用的数组zsh
。这与公共变量相同,PATH
但表示为数组。
答案2
是的,bash 有完整的代码风格约定,包括变量名称。例如,这是谷歌的外壳风格指南。
作为变量名称的具体总结:
变量名称:小写,用下划线分隔单词。前任:
my_variable_name
常数和环境变量名称:全部大写,以下划线分隔,在文件顶部声明。前任:
MY_CONSTANT
答案3
用下划线分隔单词似乎是最好的方法。
当我可以自由选择时,我有几个理由更喜欢snake_case而不是camelCase:
- 灵活:可以使用大写和小写(例如
MY_CONSTANT
和my_variable
); - 一致:数字可以分开,使数字更可读(例如
1_000_000_000
),许多编程语言都支持此功能; - 常见:常见于正则表达式
\w
处理下划线,如单词字符和数字 ([a-zA-Z0-9_]
)。