- Использование команды Sleep в скриптах Bash в Linux
- Примеры команды Sleep в Bash
- Команда sleep без суффикса считается в секундах
- Команда Sleep с суффиксом m, h или d
- Команда sleep с комбинацией секунд, минут, часов и дня
- Бонусный совет: спать меньше секунды
- Команда сна Linux (приостановка сценария Bash)
- Как использовать команду sleep
- Примеры сценариев Bash
- Выводы
- What does the sleep command do in Linux?
- So, what does the sleep command do in Linux?
- Sleep command syntax
- Sleep command examples
- How to use the Linux sleep command to pause a bash script
- Как использовать команду Linux Sleep для приостановки сценария Bash
- How to Use the Linux Sleep Command to Pause a Bash Script
- В этом руководстве мы покажем вам, как использовать команду Linux sleep .
- Как использовать sleep команду
- Примеры скриптов на Bash
- Вывод
- C Programming/POSIX Reference/unistd.h/sleep
- Contents
- Usage [ edit | edit source ]
- Windows [ edit | edit source ]
- Unix [ edit | edit source ]
- C examples [ edit | edit source ]
- C++ Example [ edit | edit source ]
- Low level functionality [ edit | edit source ]
- Uses [ edit | edit source ]
- Uninterruptible sleep [ edit | edit source ]
Использование команды 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.
Источник
Команда сна 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. Он используется для приостановки выполнения следующей команды на заданное время.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Источник
What does the sleep command do in Linux?
C an you explain to me the sleep command in Linux? I read somewhere that it can pause a bash shell script. How can I use the Linux sleep command to pause a bash script?
You can use sleep command to pause execution of shell scripts or commands for a given period on a Linux or Unix-like systems. This page explains syntax and usage of the sleep command in Linux operating systems.
Tutorial details | |
---|---|
Difficulty level | Easy |
Root privileges | No |
Requirements | sleep command on Linux or Unix |
Est. reading time | 3 minutes |
So, what does the sleep command do in Linux?
- /bin/sleep is Linux or Unix command to delay for a specified amount of time.
- You can suspend the calling shell script for a specified time. For example, pause for 10 seconds or stop execution for 2 mintues.
- In other words, the sleep command pauses the execution on the next shell command for a given time.
- GNU version of sleep command supports additional options
- For example, suspend a bash shell script or command prompt for five seconds, type: sleep 5
- Common examples of sleep commands include scheduling tasks and delaying the execution to allow a process to start. Another usage is waiting until a wifi network connection available to stream large file over the network.
Sleep command syntax
The syntax for the sleep command is as follows:
sleep NUMBER[SUFFIX]
In addition to seconds, [SUFFIX] can be as follows on GNU/Linux:
- s for seconds (the default).
- m for minutes.
- h for hours.
- d for days.
Above options are only supported on GNU version of Linux and not on macOS/Unix/*BSD family of oses. Therefore, for non-GNU/Linux system try:
sleep 5
sleep 2
Sleep command examples
To sleep for 13 seconds, use:
sleep 13
For instance, sleep for 0.5 or 2.5 seconds too, try:
sleep 0.5
OR
sleep 2.5
So a floating point number allowed. However, sleep 2h30m not allowed. Want to sleep for 2 minutes? Try:
sleep 2m
Halt or sleep for 2 hours, use:
sleep 2h
First sleep for 8 hours and after that play music file named wake-up.mp3
sleep 8h && mplayer wake-up.mp3
How to use the Linux sleep command to pause a bash script
Let us see a simple example that pause script for 10 seconds.
Источник
Как использовать команду 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 — дни
Если суффикс не указан, по умолчанию используется значение секунд.
Когда задано два или более аргументов, общее количество времени эквивалентно сумме их значений.
Вот несколько простых примеров, демонстрирующих, как использовать sleep команду:
Спать в течение 0,5 секунд:
Сон в течение 2 минут и 30 секунд:
Примеры скриптов на Bash
В этом разделе мы рассмотрим несколько основных сценариев оболочки, чтобы увидеть, как используется sleep команда.
Когда вы запустите скрипт, он напечатает текущее время в HH:MM:SS формате. Затем sleep команда приостанавливает выполнение сценария на 5 секунд. По истечении указанного периода времени последняя строка скрипта печатает текущее время.
Вывод будет выглядеть примерно так:
Давайте посмотрим на более сложный пример:
Скрипт проверяет, находится ли хост в сети или нет, каждые 5 секунд. Когда хост выходит в сеть, скрипт уведомит вас и остановит.
Как работает скрипт:
- В первой строке мы создаем бесконечный while цикл .
- Затем мы используем ping команду, чтобы определить, ip_address доступен ли хост с IP-адресом или нет.
- Если хост доступен, сценарий отобразит «Хост подключен» и завершит цикл.
- Если хост недоступен, sleep команда приостанавливает выполнение сценария на 5 секунд, а затем цикл начинается с начала.
Вывод
Команда sleep является одной из самых простых команд Linux. Он используется для приостановки выполнения следующей команды на определенный промежуток времени.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Источник
C Programming/POSIX Reference/unistd.h/sleep
A computer program (process, task, or thread) may sleep, which places it into an inactive state for a period of time. Eventually the expiration of an interval timer, or the receipt of a signal or interrupt causes the program to resume execution.
Contents
Usage [ edit | edit source ]
A typical sleep system call takes a time value as a parameter, specifying the minimum amount of time that the process is to sleep before resuming execution. The parameter typically specifies seconds, although some operating systems provide finer resolution, such as milliseconds or microseconds.
Windows [ edit | edit source ]
On Windows 2000 and newer, the Sleep() function takes a single parameter of the number of milliseconds to sleep. [1] The sleep() function is included in the kernel32.dll, but no sleep command (executable) is natively available for scripts (batch files). It can be found in collections of Windows utilities like Windows 2003 Resource Kit. [2]
Unix [ edit | edit source ]
On Unix-like operating systems, the sleep() function is called providing a single parameter of type unsigned integer of the number of seconds to sleep. [3] (For more precise sleep times one can use the usleep() function.) [4]
C examples [ edit | edit source ]
C++ Example [ edit | edit source ]
Low level functionality [ edit | edit source ]
Sleep causes the thread or process to enter the Not Runnable state. This allows the CPU to suspend the thread or process and continue executing other threads or processes until the sleep has finished, and the thread or process is allowed to continue executing. On Windows systems the sleep system call is non-interruptible, which differs from Wait and SleepEx system calls, which can be interrupted. [5] [6] However, some functions labeled sleep() are alterable by design [7] . On Unix system signals interrupt system calls, including sleep(). [8] Sleep often leads to poor code design and the wait or nanosleep functions are preferable.
Uses [ edit | edit source ]
Some system programs that never terminate execute an event loop, going to sleep at the start of each cycle and waiting for some event to awaken them. Once an event is received, the program services the event, then returns to the beginning of the next wait cycle.
Other programs periodically poll for events by going to sleep and resuming execution after a specific interval of time. Once execution is resumed, the program polls for events or status changes, and then services any that occurred while it was asleep. After servicing the events, the program then goes to sleep again for the next time interval. Certain kinds of heartbeat events or keep-alive signals can be generated by these kinds of programs.
Uninterruptible sleep [ edit | edit source ]
An uninterruptible sleep state is a sleep state that won’t handle a signal right away. It will wake only as a result of a waited-upon resource becoming available or after a time-out occurs during that wait (if specified when put to sleep). It is mostly used by device drivers waiting for disk or network IO (input/output). When the process is sleeping uninterruptibly, signals accumulated during the sleep will be noticed when the process returns from the system call or trap.
In Unix-like systems the command ‘ps -l’ uses code «D» for the uninterruptible sleep state of a process.
Источник