我有以下代码:

#!/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

09-07 15:25