Задержка выполнения команды linux

Содержание
  1. Команда сна Linux (приостановка сценария Bash)
  2. Как использовать команду sleep
  3. Примеры сценариев Bash
  4. Выводы
  5. Как использовать команду Linux Sleep для приостановки сценария Bash
  6. How to Use the Linux Sleep Command to Pause a Bash Script
  7. В этом руководстве мы покажем вам, как использовать команду Linux sleep .
  8. Как использовать sleep команду
  9. Примеры скриптов на Bash
  10. Вывод
  11. Как использовать команду Linux Sleep для приостановки скрипта BASH
  12. Хотите замедлить ваш скрипт BASH? Используйте команду сна
  13. Пример использования команды Sleep
  14. Как использовать команду сна
  15. Пример использования команды Sleep
  16. Как использовать Командные Команды Сна
  17. Приостановка терминальных команд со сном
  18. Использование команды Sleep в скриптах Bash в Linux
  19. Примеры команды Sleep в Bash
  20. Команда sleep без суффикса считается в секундах
  21. Команда Sleep с суффиксом m, h или d
  22. Команда sleep с комбинацией секунд, минут, часов и дня
  23. Бонусный совет: спать меньше секунды
  24. Команда wait в Bash
  25. Команда wait Bash
  26. Примеры
  27. Вывод

Команда сна Linux (приостановка сценария Bash)

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

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

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

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

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

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

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

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

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

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

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

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

Сон 2 минуты 30 секунд:

Примеры сценариев Bash

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

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

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

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

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

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

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

Выводы

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

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

Источник

Как использовать команду Linux Sleep для приостановки сценария Bash

How to Use the Linux Sleep Command to Pause a Bash Script

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

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

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

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

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

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

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

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

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

Читайте также:  Windows live essentials all

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

Спать в течение 0,5 секунд:

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

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

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

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

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

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

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

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

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

Вывод

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

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

Источник

Как использовать команду Linux Sleep для приостановки скрипта BASH

Хотите замедлить ваш скрипт BASH? Используйте команду сна

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

Сама по себе команда sleep не очень полезна, но как часть сценария может использоваться многими различными способами. Например, вы можете использовать его, чтобы приостановить выполнение сценария перед повторной попыткой выполнить команду, которая не была выполнена в первый раз.

Пример использования команды Sleep

Представьте, что у вас есть скрипт, который обрабатывает файлы, загруженные с другого сервера. Сценарий не должен начинать процесс копирования, пока все файлы не закончат загрузку. Процесс загрузки выполняется совершенно отдельным скриптом, который запускается перед вашим.

Ваш скрипт для копирования файлов может содержать цикл для проверки того, все ли файлы были загружены (он делает это, проверяя, найдены ли 50 файлов перед началом процесса копирования).

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

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

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

Приведенная выше команда заставит ваш терминал остановиться на 5 секунд, прежде чем вернуться в командную строку.

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

Вы можете указать задержку в секундах, минутах, часах или днях.

Когда дело доходит до приостановки работы сценария на несколько дней, стоит рассмотреть возможность использования задания cron для запуска сценария через равные промежутки времени, а не для выполнения сценария в фоновом режиме в течение нескольких дней.

Задание cron – это команда или сценарий Linux, которые можно запланировать для запуска в установленное время или день. Они очень полезны для повторения задач в течение длительного периода времени.

Число для интервала команды сна не должно быть целым числом. Вы также можете использовать числа с плавающей запятой.

Например, совершенно нормально использовать следующий синтаксис:

Пример использования команды Sleep

Следующий скрипт показывает, как использовать команду sleep для создания часов обратного отсчета для терминала:

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

Во-первых, этот скрипт устанавливает переменную x равной 10.

Цикл while продолжает повторяться, пока значение x больше нуля.

Команда sleep приостанавливает выполнение сценария на 1 секунду каждый раз вокруг цикла.

Оставшаяся часть сценария очищает экран каждую итерацию, отображает сообщение «x секунд до взрыва» и вычитает 1 из значения x.

Без команды sleep скрипт будет масштабироваться и сообщения будут отображаться слишком быстро.

Как использовать Командные Команды Сна

Команда сна имеет только пару переключателей.

Переключатель – help показывает файл справки для команды sleep. Вы можете достичь того же, используя команду man следующим образом:

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

Информация, возвращаемая переключателем –version, выглядит следующим образом:

  • Номер версии
  • Сведения об авторских правах
  • Лицензия
  • Авторы

Приостановка терминальных команд со сном

Еще одним хорошим использованием команды sleep является приостановка команд, которые вы вводите в окне терминала.

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

Тем не менее, более быстрый подход заключается в наборе двух команд в одну строку с командой сна между ними

Как работает эта команда:

  1. Команда cd/mydirectory/ изменит каталог.
  2. Команда sleep 3 будет ждать три секунды до завершения команды cd.
  3. Команда ls будет выполнена и отобразит все содержимое каталога.

Для простого примера, подобного этому, команда sleep экономит немного времени. Но если у вас длинный список команд, возможность набирать их все в одной строке экономит время.

Источник

Использование команды Sleep в скриптах Bash в Linux

Главное меню » Операционная система Linux » Использование команды Sleep в скриптах Bash в Linux

Команда sleep в Linux – одна из самых простых команд. Как видно из названия, его единственная функция – спать. Другими словами, он вводит задержку на указанное время.

Таким образом, если вы используете команду sleep с x, то следующая команда может быть запущена только через x секунд.

Команда Sleep имеет простой синтаксис:

Здесь суффикс может быть:

Давайте посмотрим несколько примеров команды sleep.

Примеры команды Sleep в Bash

Хотя вы можете использовать его непосредственно в оболочке, команда sleep обычно используется для введения задержки в выполнение сценария bash. Мы собираемся показать использование команды sleep через примеры сценариев bash.

Команда sleep без суффикса считается в секундах

Предположим, вы хотите приостановить ваш bash-скрипт на 5 секунд, вы можете использовать режим sleep следующим образом:

В примере скрипта bash это может выглядеть так:

Если вы запустите его с помощью команды time, вы увидите, что скрипт bash на самом деле работал (немного) более 5 секунд.

Команда Sleep с суффиксом m, h или d

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

Это приостановит скрипт/оболочку на одну минуту. Если вы хотите отложить сценарий на несколько часов, вы можете сделать это с помощью опции h:

Даже если вы хотите приостановить скрипт на несколько дней, вы можете сделать это с помощью суффикса d:

Это может помочь, если вы хотите работать в разные дни или дни недели.

Команда sleep с комбинацией секунд, минут, часов и дня

Вы не обязаны использовать только один суффикс за раз. Вы можете использовать более одного суффикса, и продолжительность sleep является суммой всех суффиксов.

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

Это заставит скрипт ждать 1 час 10 минут и 5 секунд. Обратите внимание, что суффикс s здесь по-прежнему необязателен.

Бонусный совет: спать меньше секунды

Вы могли заметить, что наименьшая единица времени в команде sleep – секунда. Но что если ваш bash-скрипт будет спать в течение миллисекунд?

Хорошо, что вы можете использовать с плавающей точкой (десятичные точки) с командой sleep.

Поэтому, если вы хотите ввести паузу в 5 миллисекунд, используйте ее следующим образом:

Вы также можете использовать десятичные точки с другими суффиксами.

Будет введена задержка в 1 час 37 минут и 30 секунд.

Мы надеемся, что вы не спали, читая эти примеры команды sleep -).

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Команда wait в Bash

wait — это команда, которая ожидает завершения заданных заданий и возвращает статус выхода ожидаемой команды.

Поскольку команда wait влияет на текущую среду выполнения оболочки, в большинстве оболочек она реализована как встроенная команда.

В этой статье мы рассмотрим встроенную команду wait

Команда wait Bash

Общий синтаксис wait имеет следующий вид:

ID — это идентификатор процесса или задания. Если ID не указан, команда ожидает завершения всех дочерних фоновых заданий.

Команда wait возвращает статус выхода последней ожидаемой команды.

Например, чтобы дождаться фонового процесса с PID 7654 , вы должны использовать:

Когда задано несколько процессов, команда ожидает завершения всех процессов.

Задания указываются с использованием спецификации задания («спецификация задания»), которая является способом ссылки на процессы, составляющие задание. Спецификация задания начинается с символа процента, за которым следует номер задания ( %n ). Вот пример:

Идентификатор задания оболочки (в скобках) и идентификатор процесса будут отображаться на вашем терминале:

Чтобы дождаться задания, запустите команду wait за которой следует спецификация задания:

При вызове с параметром -n команда ожидает завершения только одного задания из заданных pid или заданий и возвращает статус завершения. Если аргументы не указаны, wait -n ожидает завершения любого фонового задания и возвращает статус завершения задания.

В приведенном выше примере wait -n выводит только статус возврата задания, которое завершается первым; он не показывает PID задания. Если вы хотите получить идентификатор задания или спецификацию задания, для которого возвращается статус выхода, используйте параметр -p чтобы присвоить его переменной:

-p был представлен в Bash 5.1. Если вы используете старую версию Bash, вы получите ошибку «неверный вариант».

Параметр -f сообщает wait чтобы дождаться фактического завершения каждого pid или jobpec, прежде чем возвращать свой код выхода, вместо того, чтобы возвращаться при изменении статуса задания. Эта опция действительна, только если включено управление заданиями. По умолчанию управление заданиями включено только для интерактивных запросов.

Примеры

wait обычно используется в сценариях оболочки, которые порождают дочерние процессы, выполняющиеся параллельно.

Чтобы проиллюстрировать, как работает команда, создайте следующий сценарий:

Давайте объясним код построчно:

  1. Первая строка называется shebang и сообщает операционной системе, какой интерпретатор использовать для анализа остальной части файла.
  2. Мы используем команду sleep для имитации трудоемкого фонового процесса.
  3. $! — это внутренняя переменная Bash, в которой хранится PID последнего задания, запущенного в фоновом режиме. В этом примере это PID команды перехода в sleep . Мы сохраняем PID в переменной ( process_id ).
  4. Печатает номер PID.
  5. PID передается команде wait которая ожидает завершения команды sleep
  6. Печатает статус выхода команды wait . $? — это внутренняя переменная Bash, которая содержит статус выхода последней выполненной команды.

Если вы запустите сценарий, он напечатает что-то вроде этого:

Вот пример использования опции -n

Когда скрипт выполняется, он порождает 3 фоновых процесса. wait -n ожидает завершения первого задания и вывода оператора echo. wait ожидает завершения всех дочерних фоновых заданий.

Последний пример объясняет параметр -f . Откройте терминал и запустите:

Откройте другой терминал и остановите процесс командой kill :

После изменения статуса процесса команда wait завершится и вернет код завершения процесса.

Теперь повторите те же шаги, но на этот раз используйте wait -f $pid :

Остановите процесс с другого терминала:

На этот раз команда wait не завершится. Он будет работать до тех пор, пока не sleep процесс.

Вывод

Команда wait ожидает завершения указанных заданий и возвращает код завершения задания.

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

Источник

Читайте также:  Amd high definition audio device драйвер windows 10 x64 не работает
Оцените статью