Як зробити паузу з визначеним часом між двома командами в сценарії?


17

Я хочу зробити таке:

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

Це лише приклад сценарію з паузою 30 секунд між запуском 2 команди.

Як це зробити?

Відповіді:


26

Ви можете використовувати це в терміналі:

command1; sleep 30; command2

У вашому сценарії:

#!/bin/bash
command1
sleep 30
command2
exit

Суфікс часу сну:

  • s на секунди (за замовчуванням)
  • m хвилин
  • h годинами
  • d днями

4

Можна використовувати read -t. Наприклад:

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

У вашому сценарії:

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

Зверніть увагу, що ви можете натиснути, Enterщоб обійти період очікування.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.