Bash 错误 - 预期二元运算符

标签 bash ubuntu installation pgi pgi-accelerator

我正在尝试安装 PGI Compilers 2016 并在运行 install 之后文件
我收到一个错误:

binary operator expected

在线上:
if test -d $DIR/install_components ; then

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

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

最佳答案

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

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

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

rm $DIR

$DIR="-rf /" , 那么这将执行著名的 rm -rf /

关于Bash 错误 - 预期二元运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35723959/

相关文章:

linux - 如何在 cronjob 脚本中给用户输入

objective-c - 安装 enorme go 的照片查看器以在应用程序中使用

ubuntu - 如何安装 SOOT?

delphi - 为什么使用运行时包构建会使 EXE 文件更小?

linux - 通过 mesa 在旧硬件上运行 OpenGL 程序

linux - 一个 bash 脚本,用于解压 linux 子目录中的所有文件

linux - 替换/插入一行到文件末尾

bash - UNIX AWK 脚本 - 内存耗尽

regex - sed 正则表达式中的转义加号

bash - 如何在完成执行后终止由 bash 脚本启动的后台进程/作业?