Moin Moin! Wie schreibe ich ein "ungleich" oder "nicht gleich"? Ich habe folgenden Ausdruck: if [ "$3" = "keine Nachricht" ]; then Jetzt soll das aber passieren wenn $3 nicht gleich "keine Nachricht" ist. Ist das wie bei Java != ? Gruß & Danke Thilo
"Thilo A. Coblenzer" wrote:
Moin Moin!
Servus!
Wie schreibe ich ein "ungleich" oder "nicht gleich"?
String-Vergleich: != Int-Vergleich: -ne
Ich habe folgenden Ausdruck: if [ "$3" = "keine Nachricht" ]; then
Jetzt soll das aber passieren wenn $3 nicht gleich "keine Nachricht" ist. Dir ist schon bewusst, dass, je nachdem woher "keine Nachricht" kommt, diese Meldung Gegenstand der Internationalisierung sein kann, was in deinem Skript unter Umständen zu heftigen Problemen führen kann?
Ist das wie bei Java != ? Keine Ahnung von Java, aber != ist was Du suchst.
Siehe auch man test (Der Befehl '[' ist das Gleiche wie 'test') Gruss Ralf
* Thilo A. Coblenzer schrieb am 30.Apr.2001:
Wie schreibe ich ein "ungleich" oder "nicht gleich"?
Ich habe folgenden Ausdruck: if [ "$3" = "keine Nachricht" ]; then
Jetzt soll das aber passieren wenn $3 nicht gleich "keine Nachricht" ist. Ist das wie bei Java != ?
Ja, bei Stringvergleich ist es so. Wenn Du es vermutest, warum testest Du es nicht selber? $ test "string" != "string" $ echo $? 1 $ test "string" != "was anderes" $ echo $? 0 Der Rückgabewert ist 0 für Richtig und ungleich 0 für falsch. Das ist anders als bei Java. Bernd -- Bitte die Etikette beachten: http://home.t-online.de/~f.walle/etikette.html Bitte Realnamen angeben, kein Vollquoting, kein Html, PGP oder Visitenkarten benutzen. Signatur mit "-- " abtrennen, bei Antworten "Re: " voranstellen, sonst nichts. |Zufallssignatur 4
Hallo, On Mon, 30 Apr 2001 at 10:36 +0200, Bernd Brodesser wrote:
* Thilo A. Coblenzer schrieb am 30.Apr.2001:
Wie schreibe ich ein "ungleich" oder "nicht gleich"?
Ich habe folgenden Ausdruck: if [ "$3" = "keine Nachricht" ]; then
Jetzt soll das aber passieren wenn $3 nicht gleich "keine Nachricht" ist. Ist das wie bei Java != ?
Ja, bei Stringvergleich ist es so. Wenn Du es vermutest, warum testest Du es nicht selber?
Frage ich mich auch.
$ test "string" != "string" $ echo $? 1 $ test "string" != "was anderes" $ echo $? 0
Es gibt auch noch die Möglichkeit $ test ! "string" = "was anderes" $ echo $? 0 ! negiert den Wert des Vergleichs, das ist unabhängig von "=" bei Test der Fall. Z. B. geht ein test ! "0001" -eq "1" ; echo $? während man ansonsten auf "-ne" ausweichen müsste. Das nur am Rande und als Ergänzung. Gruß, Bernhard -- Du suchst ICQ-Nummern diverser Mitglieder diese Mailingliste? Oder eine PGP-Key? http://suse.tux.nu/ ******************** Gnu PGP-Key: DDAF6454 * Tux# 171705 * ICQ# 98361051
On Mon, 30 Apr 2001, Bernhard Walle wrote:
Es gibt auch noch die Möglichkeit
$ test ! "string" = "was anderes" $ echo $? 0
Wenn wir schon bei Moeglichkeiten sind: if [ ! "$3" = "was" ]; then tuwas else tuwasanderes fi Volker -- #define QUESTION ((bb) || !(bb)); // Shakespeare
participants (5)
-
Bernd Brodesser
-
Bernhard Walle
-
Ralf Corsepius
-
Thilo A. Coblenzer
-
Volker Mueller