Ich versuche, das folgende Shell-Skript auszuführen, das prüfen soll, ob eine Zeichenfolge weder Leerzeichen noch Leerzeichen enthält. Ich erhalte jedoch die gleiche Ausgabe für alle 3 genannten Zeichenfolgen. Ich habe versucht, auch die Syntax "[[" zu verwenden, aber ohne Erfolg.
Hier ist mein Code:
str="Hello World"
str2=" "
str3=""
if [ ! -z "$str" -a "$str"!=" " ]; then
echo "Str is not null or space"
fi
if [ ! -z "$str2" -a "$str2"!=" " ]; then
echo "Str2 is not null or space"
fi
if [ ! -z "$str3" -a "$str3"!=" " ]; then
echo "Str3 is not null or space"
fi
Ich erhalte die folgende Ausgabe:
# ./checkCond.sh
Str is not null or space
Str2 is not null or space