Pfefferoni
Newbie
Hallo,
ich wollte ein Skript schreiben, das je nachdem ob zwei Strings gleich sind, etwas tut oder eben nicht. Nachdem das nicht so funktionierte, wie ich wollte, hab ich erstmal folgendes ausprobiert:
Nur blöd, dass dieses Skript "Stimmt" ausgibt, der Test also true ergibt obwohl es offensichtlich nicht die gleichen Strings sind.
Ich hab dann auf der Konsole ausprobiert mit den Ergebnissen:
Also jedes Mal kommt True raus. Das gleiche bei Vergleich auf Ungleichheit. Hab auch == und kurzschreibweise ausprobiert aber alles bleibt wahr
Mach ich irgendeinen grundlegenden Fehler? Wenn ja, welcher? Testen auf leeren String funktioniert übrigens.
MfG[/code]
ich wollte ein Skript schreiben, das je nachdem ob zwei Strings gleich sind, etwas tut oder eben nicht. Nachdem das nicht so funktionierte, wie ich wollte, hab ich erstmal folgendes ausprobiert:
Code:
#!/bin/bash
echo "test-skript"
if test "t"="ta"
then
echo "Stimmt"
else
echo "Stimmt nicht"
fi
Nur blöd, dass dieses Skript "Stimmt" ausgibt, der Test also true ergibt obwohl es offensichtlich nicht die gleichen Strings sind.
Ich hab dann auf der Konsole ausprobiert mit den Ergebnissen:
Code:
pfefferoni@ibv-ip153:~/Documents> test "t"="t"; echo $?
0
pfefferoni@ibv-ip153:~/Documents> test "t"="tt"; echo $?
0
Also jedes Mal kommt True raus. Das gleiche bei Vergleich auf Ungleichheit. Hab auch == und kurzschreibweise ausprobiert aber alles bleibt wahr
Mach ich irgendeinen grundlegenden Fehler? Wenn ja, welcher? Testen auf leeren String funktioniert übrigens.
MfG[/code]