我正在尝试安装PGI编译器2016,在运行install文件之后我得到了一个错误:
binary operator expected在线路上:
if test -d $DIR/install_components ; thenShellCheck.net说“添加双引号以防止全球化和分词”,不管它的意思是什么。
但是整个安装套件都很大,所以我应该在无数个地方添加引号,还是有什么命令可以用来绕过它呢?
发布于 2016-03-01 13:57:04
如果$DIR包含空格,则命令将失败,因为变量将被展开为两个参数。
如果您知道您的$DIR将永远不包含空格,则可以安全地忽略这一点。最好是向包维护人员报告这个问题。
请注意,这可能会对您的计算机造成非常有害的事情,比如您的脚本在某个地方:
rm $DIR和$DIR="-rf /",然后它将执行著名的rm -rf /
https://stackoverflow.com/questions/35723959
复制相似问题