Sleep in bash 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 — дни

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

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

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

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

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

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

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

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

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

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

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

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

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

Вывод

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

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

Источник

Команда сна 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 / UNIX: Bash Script Sleep or Delay a Specified Amount of Time

H ow do I pause for 5 seconds or 2 minutes in my bash shell script on a Linux or Unix-like systems?

You need to use the sleep command to add delay for a specified amount of time. The syntax is as follows for gnu/bash sleep command:
sleep NUMBER[SUFFIX] [donotprint]

Tutorial details
Difficulty level Easy
Root privileges No
Requirements bash
Est. reading time 1m

[/donotprint] Where SUFFIX may be:

  1. s for seconds (the default)
  2. m for minutes.
  3. h for hours.
  4. d for days.

Please note that the sleep command in BSD family of operating systems (such as FreeBSD) or macOS/mac OS X does NOT take any suffix arguments (m/h/d). It only takes arguments in seconds. So syntax for sleep command for Unix like system is:
sleep NUMBER

Examples

To sleep for 5 seconds, use:
sleep 5
Want to sleep for 2 minutes, use:
sleep 2m
Halt or sleep for 3 hours, use:
sleep 3h
More examples:

The most common usage are as follows:

  • No ads and tracking
  • In-depth guides for developers and sysadmins at Opensourceflare✨
  • Join my Patreon to support independent content creators and start reading latest guides:
    • How to set up Redis sentinel cluster on Ubuntu or Debian Linux
    • How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
    • How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
    • A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
    • How to protect Linux against rogue USB devices using USBGuard

Join Patreon

Sample outputs from last while loop:

Animated gif.01: Sleep command in action

sleep Command Bash Script Example

Here is a simple example:

In this example, create the lock directory. I’m using [/\\:.-] here to ensure that we don’t use the same name that we are using for the .o file. Also, base the name on the expected object file name, since that is what matters with a parallel build.

How can I pause my bash shell script for 5 second before continuing?

Use the read command:
read -p «text» -t 5
read -p «Waiting five secs for Cloudflare to clear cache. » -t 5
echo «Generating pdf file now . »
Sample outputs:
Waiting five secs for Cloudflare to clear cache.
Generating pdf file now .
Where,

  • -p «text» : Show the text without a trailing newline before time out.
  • -t N : Set time out to 5 seconds.

For more info see bash command man page here and here or read it by typing the following man command:
$ man bash
$ man sleep
$ help read

🐧 Get the latest tutorials on Linux, Open Source & DevOps via

Источник

Использование команды 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.

Источник

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

Want to slow down your BASH script? Use the sleep command

What To Know

  • Use the sleep command plus a time; s=seconds, m=minutes, h=hours, or d=days (for example, sleep 5s pauses the script for 5 seconds).
  • Use man sleep for more.

This article explains how to use the Linux sleep command to pause a bash script, among other things. On its own, the sleep command isn’t very useful. However, as part of a script, it can be used in many ways. For example, you can use it to pause the script before retrying a command that failed the first time.

An Example of Using the Sleep Command

Imagine you have a script that processes files that were downloaded from another server. The script shouldn’t start the copy process until all the files finish downloading. The download process is performed by a separate script that runs before yours.

The script that copies the files may contain a loop to test whether all the files have downloaded (it does this by checking whether 50 files are found before starting the copy process).

There’s no point in the script testing constantly since this uses processor time. Instead, you might pause for a few minutes between each test before trying again. The sleep command is perfect in such circumstances.

How to Use the Sleep Command

To use the Linux sleep command, enter the following into the terminal window:

The above command makes the terminal pause for 5 seconds before returning to the command line.

The sleep command requires the keyword sleep, followed by the number you want to pause and the unit of measure.

You can specify the delay in seconds, minutes, hours, or days.

  • s: Seconds
  • m: Minutes
  • h: Hours
  • d: Days

When it comes to pausing a script for days, use a cron job to run the script at regular intervals, as opposed to having a script run in the background for days.

A cron job is a Linux command or script that you can schedule to run at a set time or day. These are useful for repeating tasks over a long period of time.

The number for the sleep command interval doesn’t have to be a whole number. You can also use floating-point numbers.

For example, the following syntax includes a fraction of a second:

An Example of Using the Sleep Command

The following script shows how to use the sleep command to make a terminal-based countdown clock:

#!/bin/bash
x=10
while [ $x -gt 0 ]
do
sleep 1s
clear
echo «$x seconds until blast off»
x=$(( $x — 1 ))
done

Here’s how this script works:

  • The script sets the variable x to 10.
  • The while loop continues to iterate while the value of x is greater than zero.
  • The sleep command pauses the script for 1 second each time around the loop.
  • The rest of the script clears the screen each iteration, displays the message, «x seconds until blast off,» and subtracts 1 from the value of x.

Without the sleep command, the script would zoom through, and the messages would display too quickly.

How to Use Sleep Command Switches

The sleep command only has a couple of switches.

The —help switch shows the help file for the sleep command. You can achieve the same thing by using the man command as follows:

The —version switch shows the version of the sleep command that’s installed on the system.

The information returned by the —version switch is as follows:

  • Version number
  • Copyright details
  • License
  • Authors

Pause Terminal Commands with Sleep

Another good use for the sleep command is to pause commands that you type in the terminal window.

If you want, you can type two commands in a row, waiting for the first one to finish before typing the second.

However, a faster approach is to type the two commands on one line, with a sleep command between each command:

$ cd /mydirectory/ && sleep 3 && ls

How this command works:

  • The cd /mydirectory/ command changes the directory.
  • The sleep 3 command waits three seconds for the cd command to finish.
  • The ls command executes and displays the directory contents.

For a simple example like this, the sleep command only saves a little bit of time. However, if you have a long list of commands, the ability to type the commands on one line saves time.

Источник

Читайте также:  Epson l805 драйвер windows 10 x64
Оцените статью