我有这个代码:
#!/bin/bash
CMDA=$(curl -sI website.com/example.txt | grep Content-Length)
CMDB=$(curl -sI website.com/example.txt | grep Content-Length)
if [ "CMDA" == "CMDB" ];then
echo "equal";
else
echo "not equal";
fi
有了这个输出
root@abcd:/var/www/html# bash ayy.sh
not equal
应该是“相等”而不是“不相等”。我做错了什么?
谢谢
最佳答案
您忘记了变量 CMDA
和 CMDB
的 $
。这就是您所需要的:
if [ "$CMDA" = "$CMDB" ]; then
我还把==
操作符改成了=
,
因为man test
只提到了=
,
而不是 ==
。
此外,您还有一些多余的分号。整个事情有点干净:
if [ "$CMDA" = "$CMDB" ]; then
echo "equal"
else
echo "not equal"
fi
关于linux - Bash - 比较两个命令的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40793194/