我正在重构一些unix shell脚本 并在我们的代码中找到许多不一致和不同的样式
例如:
somevar="${item1},${item2}"
somevar=${item1}","${item2}
somevar="$item1,$item2"
unix shell脚本是否有编码样式指南?或者像C ++的clang格式的格式化程序
[编辑] 请注意我不是要求个人风格偏好或个人意见!我正在寻找行业标准文档,广泛使用的样式指南或流行的工具。
答案 0 :(得分:2)
我曾在一些拥有自己风格指南的公司工作,但大多数公司现在都使用Google的风格指南。如果您没有家庭成长的风格指南,那么谷歌就是好的,并在此发布:https://google.github.io/styleguide/shell.xml
我亲自使用vim的shellcheck插件检查我的shell脚本,但它可以在网上和其他编辑器上找到。您可以使用它并在此处获取下载:https://www.shellcheck.net/
答案 1 :(得分:2)
由于word splitting不会在变量赋值的上下文中发生,您可以使用:
somevar=${item1},${item2}
我个人更喜欢使用
somevar="${item1},${item2}"
报价并没有受到伤害,而且 - imo - 增加了可读性。
关于${var}
与$var
的关系。当变量名称可能包含下划线时,这很重要,例如"$foo_bar"
。这是什么意思?变量$foo
加上文字字符串_bar
?或者变量$foo_bar
的扩展?因此,我会使用${var}
来避免这种情况。