Hier ist ein Teil meines Skripts test.sh:
#!/bin/bash
tar -cf $name.tar $name && pbzip2 $name.tar
echo "[$1: Waiting..]
Bitte, ich habe eine Frage. Die Ausführung des zweiten Befehls „echo“ erfolgt direkt nach der Erstellung der Datei .tar.bz2? Soweit ich sehe, nein. Ich sehe, dass ich nur das Tar-Verzeichnis habe und der Befehl „echo“ gestartet wird!
Irgendeine Erklärung bitte? Vielen Dank.
Antwort1
Der echo
Befehl wird nicht ausgeführt, solange dervorheriger Pack- und Komprimierungsbefehl wurde nicht ausgeführt.
Das bedeutet, dass keine Ausgabe erfolgt, bis die Datei gepackt und komprimiert ist. Wenn Sie eine Ausgabe wünschen, die anzeigt, wann die Datei beginnt und wann sie fertig ist, verwenden Sie:
#!/bin/bash
echo "[$1: Packing]"
tar -cf $name.tar $name && pbzip2 $name.tar
echo "[$1: Done]"