1

我正在尝试安装 PGI Compilers 2016,运行install文件后出现错误:

binary operator expected

在线上:

if test -d $DIR/install_components ; then

ShellCheck.net说“添加双引号以防止通配符和分词”无论它是什么意思。

但是整个安装套件非常大,所以我应该在无数地方添加引号还是有一些命令可以用来绕过它?

4

1 回答 1

1

如果$DIR包含空格,则该命令将失败,因为该变量将扩展为两个参数。

如果您知道您$DIR将永远不会包含空格,则可以放心地忽略它。最好的办法是向包维护者报告问题。

请注意,这可能会对您的计算机造成非常有害的影响,比如说您的脚本在某处会:

rm $DIR

$DIR="-rf /"然后这将执行著名的rm -rf /

于 2016-03-01T13:57:04.150 回答