3

У меня есть скрипт bash, куда я архивирую некоторые файлы. Этот процесс иногда занимает время в зависимости от размеров файла. Я хочу получить pid этой команды и отображать мигающее сообщение «Zipping ...» до завершения процесса, что-то вроде следующего:

zip -r test.zip *.php > /dev/null &
pid=$!
while (kill -0 $pid)
do clear
sleep 1
echo "Zipping......."
sleep  1
done

Является ли $ pid точным PID команды zip, которую я запускаю?

1 ответ1

4

Вы можете заставить TEXT мигать:

printf "\x1b[5mTEXT\x1b[25m"

С некоторой очисткой:

zip -r test.zip *.php > /dev/null &
pid=$!

while (kill -0 $pid) ; do
    clear
    printf "\x1b[5mZipping...\x1b[25m"
    sleep 1
done

С еще большей очисткой:

zip -r test.zip *.php > /dev/null &
clear
printf "\x1b[5mZipping...\x1b[25m"
wait $!
clear

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .