[: ==: unary operator expected
时间: 2023-05-01 15:06:28 浏览: 178
这个错误信息通常出现在Shell脚本的语法错误中,意思是'[:'之后需要一个一元操作符。可能是因为出现了表达式的错误或语法格式不符合Shell脚本的要求。可以查看相关的Shell脚本语法规范,修改脚本以解决这个问题。
相关问题
iu@liu-desktop:~/桌面$ bash 2.sh 2.sh: line 7: [: ==: unary operator expected 2.sh: line 9: [: ==: unary operator expected
这个错误消息表明,在你的脚本中 if 语句中的条件表达式没有正确地运行。具体来说,在这个脚本中,第7行和第9行的条件表达式都需要改正。
请尝试将第7行和第9行的条件表达式改为:
```
if [ "$1" = "r" ]; then
...
fi
if [ "$2" = "w" ]; then
...
fi
```
需要注意的是,条件表达式中等号两侧需要有空格,而且变量名需要用双引号括起来,否则可能会因为空格或特殊字符导致语法错误。
sum: =test1.sh: No such file or directory test1.sh: line 8: [: -gt: unary operator expected
这个错误通常出现在你尝试运行 test1.sh 脚本时,脚本里面的某个地方使用了一个不正确的语法。具体来说,可能是 line 8 上的某个地方使用了一个“-gt”操作符,但是没有正确地指定操作数。这个错误的提示信息表明操作数似乎是空的,因此 shell 报告“unary operator expected”。
要解决这个问题,你需要回到 test1.sh 脚本中,找到 line 8,然后检查哪里使用了“-gt”操作符。然后,确保操作符的两侧都有正确的操作数。如果你不确定如何更正问题,可以将 test1.sh 脚本的内容贴到一个文本编辑器中,并请求其他开发者或社区成员的帮助。
阅读全文