我正在修复给定的 shell 脚本,我收到以下错误消息
line 322: [: ==: unary operator expected
此错误从该行返回。
if [ $4 == "managed?.out" ];then
有人可以解释一下是什么导致了这个错误
也有人可以解释使用的目的是什么?在“托管?.out”
提前感谢您的帮助
您需要引用$4
:
if [ "$4" == "managed?.out" ];then
将 if 语句更改为
if [ "$4" == "managed?.out" ];then
双引号仅在您使用 $4 时是必需的,如果您的变量是 $string,则不需要它们。
应该 ”?” 被解释为 bash 通配符?如果是,您需要使用
if [[ "$4" == managed?.out ]];then
尝试:
if [[ $4 == "managed?.out" ]];then