ich hab ein Bash-Script geschrieben welches Verzeichnisse archivieren und komprimieren soll. Funktioniert alles wunderbar (mein erstes Sinnvolles script Hurra ) außer eine kleine Sache.
Wenn ich alles sinngemäß eingebe, fordert mich die Shell auf, einen Befehl einzugeben. ich antworte meist mit exit und das script läuft dann wie geplant. hier die ersten Zeilen wo der Fehler stecken sollte (alles dannach sind nur if und elif then else anweisungen die Funktionieren). Ich hab auch nix in ne subshell gepackt, zumindest nicht, dass ich wüsste, außer halt die Shebang-Zeile #/bin/bash )
(ob es jetzt Sinn macht das archiv in /tmp zu stecken is erstmal Egal, das script selbst dient nur der übung Falls es aber was Sinnvolles neben /tmp gibt und nicht im Home verzeichnis liegt bin ich für jede Anregung dankbar)
Code: Alles auswählen
11 opt=$1
12 Dir=$2
13 archiv=/tmp/archiv
14 if [ $# != 2 ]
15 then
16 echo "Benötigt wird ein Operand und eine Verzeichn isangabe!"
17 exit 1
18 fi
19
20 ls $archiv >/dev/null 2>&1
21 if [ $? != 0 ]
22 then mkdir $archiv >/dev/null
23 fi