Spánek v Linuxu

Sleep Command Linux



Příkaz spánku se používá ke zpoždění na pevnou dobu během provádění libovolného skriptu. Když kodér potřebuje pozastavit provádění jakéhokoli příkazu pro konkrétní účel, pak se tento příkaz použije s konkrétní časovou hodnotou. Výšku zpoždění můžete nastavit o sekundy (s), minuty (m), hodiny (h) a dny (d). Tento tutoriál vám pomůže naučit se používat příkaz spánku pomocí různých skriptů bash.

Syntaxe příkazu spánku:

číslo spánku [přípona]







Jako časovou hodnotu můžete použít libovolné celé nebo zlomkové číslo. Příponová část je pro tento příkaz volitelná. Pokud příponu vynecháte, hodnota času se ve výchozím nastavení vypočítá jako sekundy. Můžeš použít s, m, h a d jako hodnota přípony. Následující příklady ukazují použití příkazu sleep s různými příponami.



Příklad-1: příkaz spánku bez jakékoli přípony

V následujícím skriptu se používá příkaz spánku s číselnou hodnotou 2 pouze a není použita žádná přípona. Pokud tedy spustíte skript, pak řetězec Úkol splněn vytiskne po 2 sekundách čekání.



#!/bin/bash

vyhodil 'Čekání 2 sekundy ...'
spát 2
vyhodil 'Úkol splněn'

Spusťte soubor bash pomocí čas příkaz k zobrazení tří typů časových hodnot pro spuštění skriptu. Výstup ukazuje čas, který systém používá, uživatel a reálný čas.





$čas bashsleep1.sh

Výstup:



Příklad-2: příkaz spánku s minutovou příponou

V následujícím skriptu „ m ‘Se používá jako přípona s příkazem spánku. Zde je hodnota času 0,05 minuty. Po čekání 0,05 minuty Úkol splněn zpráva bude vytištěna.

#!/bin/bash

vyhodil 'Čekání 0,05 minuty ...'
spát0,05 m
vyhodil 'Úkol splněn'

Spusťte skript pomocí čas příkaz jako první příklad.

$čas bashsleep2.sh

Výstup:

Příklad 3: příkaz spánku s hodinovou příponou

V následujícím skriptu „ h ‘Se používá jako přípona s příkazem spánku. Zde je hodnota času 0,003 hodiny. Po čekání 0,003 hodiny Úkol splněn by měl být vytištěn na obrazovce, ale ve skutečnosti to vyžaduje vícekrát 'H' používá se přípona.

#!/bin/bash

vyhodil 'Čekání 0,003 hodiny ...'
spát0,003 h
vyhodil 'Úkol splněn'

$čas bashsleep3.sh

Výstup:

Příklad-4: příkaz spánku se smyčkou

Příkaz spánku můžete použít k různým účelům. V následujícím příkladu se příkaz sleep používá se smyčkou while. Zpočátku hodnota proměnné n je nastavena na 1 a hodnota n bude zvýšeno o 1 pro 4 časy v každém 2 sekundový interval. Kdy tedy skript spustíte, každý výstup se zobrazí po 2 sekundách čekání.

#!/bin/bash
n=1
zatímco [ $ n -lt 5 ]
dělat
vyhodil „Hodnota n je nyní$ n'
spát2 s
vyhodil ''
((n=$ n+1))
Hotovo

Výstup:

Příklad-5: příkaz spánku v terminálu s jinými příkazy

Předpokládejme, že chcete spustit více příkazů a nastavit pevný časový interval mezi výstupy dvou příkazů, pak k provedení tohoto úkolu můžete použít příkaz spánku. V tomto případě příkaz ls a pwd jsou s spát příkaz. Po provedení příkazu, ls příkaz zobrazí seznam adresářů aktuálního adresáře a po 2 sekundách zobrazí cestu aktuálního pracovního adresáře.

$ls && spát 2 && pwd

Výstup:

Příklad-6: Použití příkazu spánku z příkazového řádku

příkaz spánku se v následujícím příkladu používá mezi dvěma příkazy echo. Po provedení příkazu se zobrazí tři časové hodnoty.

$čas (vyhodil 'Start';spát 5;vyhodil 'Konec')

Výstup:

příkaz spánku je užitečný příkaz, když potřebujete napsat skript bash s více příkazy nebo úkoly, výstup jakéhokoli příkazu může vyžadovat velké množství času a další příkaz musí čekat na splnění úkolu předchozího příkazu. Například chcete stáhnout sekvenční soubory a další stahování nelze spustit před dokončením předchozího stahování. V tomto případě je lepší před každým stažením spát a čekat na pevně stanovenou dobu.