我们开始使用shellcheck检查我们的脚本是否存在错误/警告
现在常见的警告我们在所有脚本中看到的是未引用的变量
是否有任何脚本来纠正这些简单的警告/错误?
我有以下命令用于将$VAR
更改为${VAR}
sed -i -r 's:\$([_a-zA-Z?][_a-zA-Z0-9]*):${\1}:g' <scriptname>
我修改如下,
sed -i -r 's:\$([_a-zA-Z?][_a-zA-Z0-9]*):"${\1}":g' <scriptname>
上面的命令工作正常,但是当它们被引用时,例如"$VAR"
它更改为""${VAR}""
是否继续使用sed
或更好的写脚本来执行此操作的任何建议?
任何特别的建议?
答案 0 :(得分:2)
仔细编辑
当你写echo "This is example ${var} in the middle of the line"
时,你不想在${var}
附近加上引号
您应该将所有变量(PATH,PWD和其他系统变量除外)放在小写中。
您可能希望在.vimrc
中添加一些映射,这些映射将使用F5的F4(类似. ! ~/bin/make_my_var
)执行您的sed第一或第二个命令行,从而使编辑更容易。在make_my_var
中,当它们不是异常列表之一时,您可以添加用于小写变量的逻辑。
和(编辑):
您可能需要更多标准,可能使用styleguide。