bash script: prüfen ob man in richtigem verzeichnis ist?
will das quasi so haben aber wie prüfe ich da links die ausgabe von pwd ? :
if [AUSGABE VON pwd == "/home/user3/ordner"]; then
3 Antworten
Das Zeichen [ ruft das Unix Werkzeug test auf. Daher muss dort zwingend ein Leerzeichen eingebaut werden.
Hallo
bash script: prüfen ob man in richtigem verzeichnis ist?
Ich weiß ja nicht was für dich "richtig" ist, aber so sollte es klappen:
#!/bin/bash
if [ $(pwd) == "/home/$USER" ];
then
echo "Hallo $USER, Du bist Zuhause";
else
echo "Du befindest gerade in: $(pwd)";
fi
Linuxhase
AUSGABE VON
heißt bei bash $() - also in deinem Fall $(pwd). Oder auch die hier `` links neben dem Backspace. Also in deinem Fall `pwd` - aber $() ist meistens besser lesbar.
Mir ist aufgefallen, dass hier nach [ und vor ] kein Leehrzeichen erscheint. Kann natürlich auch an dem gutefrage Code-Highlighter liegen, achte jedoch unbedingt darauf, dass du
if [LEERZEICHEN $(pwd) == "..." LEERZEICHEN ];
machst - sonst gibts komsiche Fehlermeldungen ;).
Wichtig: unbedingt auch Leerzeichen links und rechts des Vergleichoperators. Falls fehlend: Zuweisung, die immer wahr ist. Ich verwende in der bash immer ein einfaches =, das reicht.