Das folgende Bash-Skript erstellt ein Verzeichnis, wenn nicht existiert und schreibt eine Datei in es. Wenn ein Verzeichnis vorhanden ist, ruft es jetzt eine Liste von Dateien dieses in einem Array eingekapselten Verzeichnisses ab. Dies ist der Code:erwartet fi Bug in Bash-Skript
if [ -d $ETC_DIR ]; then
echo " * wan27 has been found on your system"
echo " * checking for installed versions"
versions=(`ls $ETC_DIR`) # line 27
else
echo " * First time installation! Creating etc directory now..."
mkdir $ETC_DIR
echo "$VERSION\n$USERi\n`date +%Y%m%d%H%M%S`\n$ROOT_DIR" > $ETC_DIR/install_$VERSION.txt
fi
Und das ist, was die Anschlussausgänge:
27: Syntax error: "(" unexpected (expecting "fi")
So, Zeile 27 tatsächlich ist dies ein in ersten Auszug aus Code:
versions=(`ls $ETC_DIR`)
Was ist Ich mache falsch? Ich habe auch Semikolons ausprobiert, aber es endete mit dem gleichen Ergebnis ...
Sie Linie 1 ~ 23 als auch enthalten sollte – ajreal
Sie sollten sagen 'Versionen = ($ ETC_DIR/*)' stattdessen auf den Ausgang der Berufung von 'ls'. – Sorpigal