[Bash] AND & OR in if Bedingungen
Hier mal ein Beispiel wie man in der Linux Bash mehrere Bedingungen in einem if-Statement abfragen kann.
# Und if [ "$SHELL" == "/bin/bash" ] && [ "$USER" == "sim4000" ]; then echo "User und Shell sind richtig"; fi # Oder if [ "$SHELL" == "/bin/bash" ] || [ "$USER" == "sim4000" ]; then echo "User oder Shell sind richtig"; fi # Beides if ( [ "$a" == "a" ] || [ "$a" == "b" ] ) && ( [ "$b" == "c" ] ); then echo "moo"; fi
Ganz wichtig ist dabei kein Leerzeichen zu vergessen! Vor allem bei den Vergleichsoperatoren. Schreibt man zum Beispiel $foo=="bar" anstatt $foo == "bar", wird die Bedingung immer wahr sein. Also nix mit Fehlermeldung...
Lässt man aber das Leerzeichen zwischen »if« und »[« weg, gibt es eine Fehlermeldung.
Verwandte Beiträge
- ASCII Tabelle mit PHP generieren (Bash, Linux, Programmieren)
- [Bash] Dateiname ohne Endung (Bash, Linux)
- Scripte automatisch beim WLAN Anschalten ausführen (Bash, Linux)
- Dockstar Keylistener (Linux, Programmieren)
- SVN Arbeitskopie reparieren (Linux, Programmieren)






