Ich möchte ein Shell-Skript erstellen, das etwas wiedergibt, wenn 3 Verzeichnisse nicht vorhanden sind.
Hier ist der Code, den ich geschrieben habe: test.sh:
if [ ! -d "/home/unix/POSTagger2" ] || [! -d "/home/unix/POSTagger2/stanford-parser-full-2015-12-09"] || [! -d "/home/unix/POSTagger2/stanford-corenlp-full-2015-12-09"]; then
echo "Nope"
fi
Wenn ich es ausführe, erhalte ich folgende Fehlermeldung:
./test.sh: line 1: [!: command not found
Was ist falsch an meiner Syntax?
[
ist kein Token, sondern ein Befehl (ein anderer Name für den Befehl test
), der durch Leerzeichen getrennt werden muss. Ein ähnlicher Fall ist ]
ein Befehlsparameter, der ebenfalls durch ein Leerzeichen getrennt werden muss.