Команда Linux Sleep (приостановка выполнения Bash-скрипта)

Баш Сон

sleep — это утилита командной строки, позволяющая приостановить вызывающий процесс на определённое время. Другими словами, команда sleep приостанавливает выполнение следующей команды на заданное количество секунд.

Команда sleep полезна при использовании в скрипте оболочки bash, например, при повторной попытке выполнить неудавшуюся операцию или внутри цикла.

В этом уроке мы покажем вам, как использовать команду sleep в Linux.

Как использовать команду sleep

Синтаксис команды sleep следующий:

 sleep NUMBER [ SUFFIX ] ...

NUMBER может быть положительным целым числом или числом с плавающей запятой.

SUFFIX может быть одним из следующих:

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

Если суффикс не указан, по умолчанию используются секунды.

Если указаны два или более аргументов, общее количество времени эквивалентно сумме их значений.

Вот несколько простых примеров, демонстрирующих, как использовать команду sleep :

  • Сон в течение 5 секунд:

     sleep 5
  • Сон на 0,5 секунды:

     sleep 0.5
  • Сон в течение 2 минут и 30 секунд:

     sleep 2m 30s

Примеры скриптов Bash

В этом разделе мы рассмотрим несколько основных сценариев оболочки, чтобы увидеть, как используется команда sleep .

 #!/bin/bash # start time date + "%H:%M:%S" # sleep for 5 seconds sleep 5 # end time date + "%H:%M:%S"

При запуске скрипта текущее время будет выведено в формате HH:MM:SS . Затем команда sleep приостанавливает выполнение скрипта на 5 секунд. По истечении указанного времени последняя строка скрипта выведет текущее время.

Вывод будет выглядеть примерно так:

 13:34:40 13:34:45

Давайте рассмотрим более продвинутый пример:

 #!/bin/bash while : do if ping -c 1 ip_address & > /dev/null then echo "Host is online" break fi sleep 5 done

Скрипт проверяет, находится ли хост в сети, каждые 5 секунд. Когда хост подключается к сети, скрипт уведомляет вас об этом и останавливается.

Как работает скрипт:

  • В первой строке мы создаем бесконечный цикл while .
  • Затем мы используем команду ping , чтобы определить, доступен ли хост с IP-адресом ip_address .
  • Если хост доступен, скрипт выведет сообщение «Хост в сети» и завершит цикл.
  • Если хост недоступен, команда sleep приостанавливает выполнение скрипта на 5 секунд, а затем цикл начинается с начала.

Заключение

Команда sleep — одна из простейших команд Linux. Она используется для приостановки выполнения следующей команды на определённое время.

Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии.

терминал сна

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *