Как сделать паузу с определенным временем между двумя командами в сценарии?

17

Я хочу сделать следующее:

#!/bin/bash
command1
pause 30 seconds
command2
exit

Это только пример сценария с паузой 30 секунд между запуском команды 2.

Как это сделать?

Pandya
источник

Ответы:

26

Вы можете использовать это в терминале:

command1; sleep 30; command2

В вашем скрипте:

#!/bin/bash
command1
sleep 30
command2
exit

Суффикс на время сна:

  • s на секунды (по умолчанию)
  • m на минуты
  • h часами
  • d несколько дней
TuKsn
источник
4

Вы можете использовать read -t. Например:

read -p "Continuing in 5 seconds..." -t 5
echo "Continuing..."

В вашем скрипте:

command1
read -p 'Pausing for 30 seconds' -t 30
command2

Обратите внимание, что вы можете нажать, Enterчтобы обойти период ожидания.

Хосе Роза
источник