Порядок выполнения инструкций в оболочке скрипта

Порядок выполнения инструкций в оболочке скрипта

Вот часть моего скрипта test.sh:

#!/bin/bash

tar -cf $name.tar $name && pbzip2 $name.tar
echo "[$1: Waiting..]

Пожалуйста, у меня есть вопрос. Выполнение второй инструкции "echo" происходит сразу после создания файла .tar.bz2 ? как я вижу нет. Я вижу, что у меня есть только каталог tar и инструкция echo запускается !

Пожалуйста, объясните? Большое спасибо.

решение1

Команда echoне выполняется до тех пор, покапредварительная команда упаковки и сжатия не выполнена.

То есть, никакого вывода, пока файл не упакован и не сжат. Если вы хотите, чтобы какой-то вывод отображался при запуске и завершении, используйте:

#!/bin/bash

echo "[$1: Packing]"
tar -cf $name.tar $name && pbzip2 $name.tar
echo "[$1: Done]"

Связанный контент