这个问题已经有了答案:
Why should there be a space after '[' and before ']' in Bash?
4答
我对shell编程语言还很陌生。为什么在打印“找不到文件或目录”后,下面的代码会回显false?
#!/bin/sh -xu
ARG_PATH="/srv/path/to/Something"
if ["$ARG_PATH" = "/srv/path/to/Something"]
then
echo "true!"
else
echo "false!"
fi
我试过用sh和bash运行代码,但没有真正改变任何东西。
最佳答案
检查路径是否正确?除了Bash
对空间敏感之外,您的语法似乎没有问题,请在space
之后和[
之前指定]
。
ARG_PATH="/srv/path/to/Something"
if [ $ARG_PATH = "/srv/path/to/Something" ]
then
echo $? #display 0 if both r same
fi
关于linux - 字符串比较在Shell中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47851914/