Was íst der Unterschied zwischen “&” “&&” “|” und “||”
&
einfache Verkettung Befehl2 wird unabhänig von Befehl1 ausgegeben
Syntax
befehl1 & befehl2Beispiel:
echo Hallo! & echo und Tschüss!Ausgabe
Hallo!
und Tschüss!
|
Pipe dient dazu den 2ten Befehl auf den ersten anzuwenden
Syntax
befehl1 | befehl2Beispiel:
ipkg list | grep "less - 444"Ausgabe von IPKG list zeigt 100 Pakete aber der zusatz mit | grep “less – 444” zeigt dann nur noch die Ergebnisse welche exakt den String in den “” enthalten
Ausgabe
less – 444-1 – Less file browser
&&
bedingte Befehlsverkettung: der zweite Befehl wird nur ausgeführt, wenn der erste Befehl erfolgreich war
Syntax
befehl1 && befehl2Beispiel:
Ping an Google => Erfolgreich Meldung sende an /dev/null und zeige Ping Erfolgreich
ping -c1 www.google.de > /dev/null && echo Ping erfolgreich
Ping erfolgreich
||
bedingte Befehlsverkettung: der zweite Befehl wird nur ausgeführt, wenn der erste Befehl NICHT erfolgreich war
Syntax
befehl1 || befehl2Beispiel:
Ping an Google wenn erfolgreich mache nichts, wenn nicht erfolgreich dann schreibe Internet down
ping -c1 www.google.de > /dev/null || echo Internet down
ping -c1 www.google.de > /dev/null || echo Internet down
ping: www.google.e: Name or service not known
Internet down