GNU/Linux >> Znalost Linux >  >> Linux

Linux Sleep Command – zpoždění po určitou dobu

Příkaz spánku systému Linux přidá zpoždění/pauzu na určitou dobu. Podle mužského spánku tento příkaz,

  • Napsali Jim Meyering a Paul Eggert.
  • Součást GNU Coreutils.
  • Licence GPLv3+:GNU GPL verze 3
  • svobodný software, můžete jej měnit a redistribuovat. NEEXISTUJE ŽÁDNÁ ZÁRUKA

Syntaxe

sleep NUMBER[smhd]
sleep OPTION

Možnosti

Každý argument je číslo, za kterým následuje volitelná jednotka.

Jednotky jsou:-

  • s – sekund
  • m – minuty
  • h – hodiny
  • d – dny

Poznámka:Výchozí jednotkou jsou sekundy.

–help – zobrazí tuto nápovědu a ukončí

–version – vypíše informace o verzi a skončí

Návratový stav nula znamená úspěch a nenulová hodnota znamená selhání.

Popis

spánek se pozastaví na dobu zadanou v argumentu. Stačí otevřít terminál a zadat níže uvedený příkaz.

~$ sleep 5

Po dobu 5 sekund můžete vidět spánek terminálu a poté reagovat. Argument NUMBER pro tento příkaz je povinný, zatímco jednotky [smhd] jsou nepovinné. Výchozí hodnota je sekund (s).

$ sleep
sleep: missing operand
Try 'sleep --help' for more information.

Historické implementace spánku vyžadovaly, aby číslo bylo celé číslo a přijímaly pouze jeden argument bez přípony. GNU však přijímá libovolná čísla s pohyblivou řádovou čárkou.

$ sleep 5.5

Spánek je vestavěný v shellu a také jako externí příkaz v některých distribucích Linuxu. Použijte typ -a příkaz pro kontrolu.

type -a sleep
sleep is /bin/sleep

Je součástí základních nástrojů, takže k zobrazení dalších informací použijte níže.

info coreutils 'sleep invocation'

Jak používat příkaz sleep ve skriptu shellu?

Skript shellu je posloupnost interních a/nebo externích unixových příkazů. Ty se provádějí postupně jeden po druhém. Pokud chcete provádění pozastavit nebo přidat zpoždění, můžete to použít níže.

Zvažte níže spánkový skript bash. Tento skript,

  1. Vytisknout zprávu
  2. Počkejte 5 sekund
  3. Vytisknout zprávu
$ cat sleep_demo.sh
#!/bin/sh

echo "Time before - "
date
sleep 5
date
echo "Time after - "

Spusťte tento unixový skript pomocí sh sleep_demo.sh příkaz.

$ sh sleep_demo.sh
Time before - 
Sat Dec 15 12:28:06 IST 2018
Sat Dec 15 12:28:11 IST 2018
Time after -

Druhou zprávu můžete jasně vidět vytištěnou po 5 sekundách.

Tento příkaz je užitečný, když jsou spuštěny dva programy a chcete, aby jeden nějakou dobu čekal na druhý.

Uvažujme o jednoduchém rozhraní, kde systém Ftpeing souboru do jiného systému. V jiném systému je naplánovaná úloha cron, která přečte a zkopíruje tento soubor do jiného umístění.

Někdy může vytvoření souboru chvíli trvat, v takovém případě můžete na nějakou dobu přidat režim spánku a vytvořit další skript, dokud se soubor nevytvoří.

Příklady

Níže jsou uvedeny příklady příkazu Unix sleep s různými možnostmi.

Příklad 1 – spánek na 1 sekundu

sleep 1

nebo

sleep 1s

Příklad 2 – 1 minutu spánku

sleep 1m

Příklad 3 – spát 1 hodinu

sleep 1h

Příklad 4 – spát celý den

sleep 1d

Příklad 5 – tisk nápovědy

$ sleep --help
Usage: sleep NUMBER[SUFFIX]...
  or:  sleep OPTION
Pause for NUMBER seconds.  SUFFIX may be 's' for seconds (the default),
'm' for minutes, 'h' for hours or 'd' for days.  Unlike most implementations
that require NUMBER be an integer, here NUMBER may be an arbitrary floating
point number.  Given two or more arguments, pause for the amount of time
specified by the sum of their values.

      --help     display this help and exit
      --version  output version information and exit

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
Full documentation at: <http://www.gnu.org/software/coreutils/sleep>
or available locally via: info '(coreutils) sleep invocation'

Příklad 6 – informace o verzi pro tisk

~$ sleep --version
sleep (GNU coreutils) 8.28
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Jim Meyering and Paul Eggert.

Reference a další čtení

  • http://www.gnu.org/software/coreutils/manual/coreutils.html#sleep-invocation
  • http://www.gnu.org/software/coreutils/


Linux
  1. 8 tipů pro příkazový řádek Linuxu

  2. Příklady příkazů času Linux

  3. Jak přesměrovat výstup příkazu time do souboru v Linuxu?

  1. Výukový program příkazu spánku pro Linux pro začátečníky (s příklady)

  2. Linux time Command Tutorial pro začátečníky (s příklady)

  3. Příklady příkazů timedatectl v Linuxu

  1. Příklady příkazů uptime v Linuxu

  2. Linux top command:What are us, sy, ni, id, wa, hi, si and st (pro využití CPU)?

  3. Přidání náhodného zpoždění pro příkaz Linux