Bash - Vergleich der Ausgabe der beiden Befehle
Habe ich diesen code:
#!/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
mit dieser Ausgabe
root@abcd:/var/www/html# bash ayy.sh
not equal
werden sollte "gleich" anstelle von "nicht gleich". Was habe ich falsch gemacht?
Thnaks
- Sie vergaß die
$
für die Variablen gibt. Dies ist, was Sie brauchen:if [ "$CMDA" == "$CMDB" ];then
- danke, funktioniert, wenn Sie möchten, können Sie schreiben thit als Antwort, damit kann ich markieren Sie es als die richtige
- Okay, dort gehen Sie. Warf ein paar extra-Tipps zu.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du hast vergessen die
$
für die VariablenCMDA
undCMDB
es. Dies ist, was Sie brauchen:Ich habe auch die
==
Betreiber=
,da
man test
nur erwähnt=
,und nicht
==
.Außerdem haben Sie einige überflüssige Semikolons. Das ganze ein bisschen cleaner:
Sie einen Vergleich-string "CMDA" mit "CMDB", sollten Sie statt dessen vergleichen Sie die Variablen mit $ wie ${CMDA}