Кратко: в этом руководстве мы обсудим практические примеры команд сна. Следуя этому руководству, программисты Linux смогут использовать команду sleep для написания надежных сценариев оболочки.
Linux-программисты и системные администраторы предпочитают писать сценарии оболочки для автоматизации простых задач. Однако написать надежный сценарий — непростая задача. Нам нужно обработать множество крайних случаев, таких как механизм повторных попыток, отладка, ведение журнала, отчеты об ошибках и т. д.
[Вам также может понравиться: 10 полезных советов по написанию эффективных скриптов Bash в Linux ]
В дополнение к этому, нам много раз нужно имитировать задержку выполнения команды для тестирования сценариев тайм-аута. Точно так же нам нужно ввести задержки в сценарий для реализации механизма повторных попыток. спать command — идеальное решение для таких сценариев.
В этом руководстве мы обсудим использование спать команда. Как следует из названия, спать Команда используется для задержки выполнения следующей команды. Это заставляет вызывающую программу спать в течение определенного периода времени.
Оглавление
Синтаксис спать Команда очень проста, так как принимает один обязательный параметр с необязательным суффиксом:
$ спать[СУФФИКС]
Важно отметить, что в приведенном выше синтаксисе нет пробела между ЧИСЛО и СУФФИКС.
По умолчанию спать команда ждет несколько секунд. Чтобы понять это, давайте распечатать текущее время до и после спать команда:
Например, следующая команда ожидает 5 секунд после печати текущего времени:
$ дата '+%r'; спать 5; дата '+%r'
В этом примере мы использовали точку с запятой (;)
для разделения каждой команды.
Опционально, спать Команда позволяет нам указать единицу времени с помощью суффиксов. Мы можем использовать следующие суффиксы с командой sleep:
с
– указать единицы времени в секундах.м
– указать единицы времени в минутах.час
– указать единицы времени в часах.г
– указать единицы времени в днях.Итак, воспользуемся 'м'
суффикс для сна 1 минута:
$ дата '+%r'; спать 1м; дата '+%r'
Важно отметить, что между ЧИСЛО и СУФФИКС.
Мы можем использовать несколько суффиксов с спать команда. В таком случае продолжительность времени рассчитывается путем суммирования всех значений.
Чтобы понять это, давайте воспользуемся следующей командой, чтобы заснуть на 1 минута и 20 секунды:
$ дата '+%r'; спать 1м 20с; дата '+%r'
В приведенном выше примере мы использовали два разных суффикса. Однако мы можем использовать и те же суффиксы.
Например, мы можем использовать 2 с и 3 с суффикс спать для 5 секунды:
$ дата '+%r'; спать 2с 3с; дата '+%r'
Кроме того, спать Команда также принимает число с плавающей запятой в качестве входных данных. Мы можем использовать этот метод, чтобы спать меньше секунды.
Например, мы можем использовать функцию 0,5 с значение для сна в течение полсекунды:
$ дата '+%r'; сон 0,5 с; дата '+%r'
В приведенном выше выводе мы видим, что команда даты показывает то же значение для секундной единицы времени.
В дополнение к этому мы можем использовать плавающие значения и с другими суффиксами. Например, мы можем использовать функцию 0,5 м ценность для сна 30 секунды:
$ дата '+%r'; сон 0,5м; дата '+%r'
В предыдущих нескольких примерах мы видели, как использовать спать команда для задержки выполнения следующей команды. Мы можем использовать этот прием для имитации будильника.
Итак, давайте используем следующую команду, чтобы установить будильник через 5 секунд:
$ спать 5; cvlc будильник.mp3.
Приведенная выше команда открывает будильник.mp3 файл с помощью VLC-медиаплеер после ожидания 5 минут. Как и любую другую команду Linux, мы можем использовать ctrl+c
комбинация клавиш, чтобы остановить медиаплеер VLC.
В этом примере мы использовали медиаплеер VLC, но можно использовать любой другой медиаплеер Linux или звуковая утилита для достижения того же результата.
Чтобы смоделировать цифровые часы, мы можем запустить спать команда в бесконечном цикле через каждую секунду. Давайте разберемся с этим на примере.
Во-первых, давайте напишем простой сценарий оболочки с именем цифровые часы.sh со следующим кодом:
#!/bin/bash пока [ 1 ] do clear tput cup 5 30 date '+%r' sleep 1. сделанный.
В этом скрипте мы использовали tput команда для установки курсора на 5-й ряд и 30-й столбец.
Теперь давайте запустим скрипт и посмотрим на результат:
$ chmod +x цифровые часы.sh $ ./цифровые часы.sh.
Наконец, мы можем использовать ctrl+c
комбинация клавиш, чтобы остановить выполнение скрипта.
Вам также может понравиться:
В этом руководстве мы обсудили, как использовать спать команда для задержки выполнения следующей команды. Linux-программисты могут использовать спать команды для написания надежных сценариев оболочки.
Знаете ли вы какой-либо другой лучший пример команды sleep в Linux? Сообщите нам свое мнение в комментариях ниже.