A Linux Sleep parancs használata a BASH-szkript szüneteltetésére

Mit kell tudni

  • Használja a alvás parancs plusz egy idő; s=másodpercig, m=percek, h=órák, vagy d=napok (például, alvás 5 mp 5 másodpercre szünetelteti a szkriptet).
  • Használat ember alszik többért.

Ez a cikk elmagyarázza, hogyan használható a Linux alvás parancs a a bash script, többek között. Önmagában az alvás parancs nem túl hasznos. Egy szkript részeként azonban sokféleképpen használható. Használhatja például a szkript leállítására, mielőtt újra megpróbálná az első alkalommal meghiúsult parancsot.

Linux alvás parancsot futtató személy 20 másodpercig egy laptopon
Kaley McKean / Lifewire

Példa az Alvás parancs használatára

Képzelje el, hogy van egy szkriptje, amely feldolgozza a másik szerverről letöltött fájlokat. A szkriptnek nem szabad elindítania a másolási folyamatot, amíg az összes fájl letöltése be nem fejeződik. A letöltési folyamatot egy külön szkript hajtja végre, amely az Öné előtt fut.

A fájlokat másoló szkript tartalmazhat egy ciklust annak ellenőrzésére, hogy az összes fájl letöltődött-e (ezt úgy teszi, hogy a másolási folyamat megkezdése előtt ellenőrzi, hogy a rendszer 50 fájlt talál-e).

Nincs értelme a szkriptet folyamatosan tesztelni, mivel ez processzoridőt használ. Ehelyett néhány perc szünetet tarthat az egyes tesztek között, mielőtt újra próbálkozna. Az alvás parancs tökéletes ilyen körülmények között.

Az Alvás parancs használata

A Linux alvás parancs használatához írja be a következőt a terminálablakba:

alvás 5 mp

A fenti parancs hatására a terminál 5 másodpercre szünetet tart, mielőtt visszatérne a parancssorba.

Az alvás parancshoz a kulcsszó szükséges alvás, ezt követi a szüneteltetni kívánt szám és a mértékegység.

Megadhatja a késleltetést másodpercben, percben, órában vagy napban.

  • s: Másodpercek
  • m: Percek
  • h: Órák
  • d: Napok

Ha egy szkriptet napokra szüneteltet, használjon cron feladatot a szkript rendszeres időközönkénti futtatásához, szemben azzal, hogy a szkript napokig fut a háttérben.

A cron-feladat egy Linux-parancs vagy szkript, amely ütemezhető egy meghatározott időben vagy napon. Ezek hasznosak a feladatok hosszú időn keresztüli ismétléséhez.

Az alvás parancs intervallumának számának nem kell egész számnak lennie. Lebegőpontos számokat is használhat.

Linux alvás parancs

Például a következő szintaxis a másodperc töredékét tartalmazza:

alvás 3,5 mp

Példa az Alvás parancs használatára

A következő szkript megmutatja, hogyan kell az alvás parancsot használni terminálalapú visszaszámláló óra létrehozásához:

#!/bin/bash
x=10
míg [ $x -gt 0 ]
csináld
alvás 1s
egyértelmű
echo "$x másodperc a robbanásig"
x=$(($x - 1 ))
Kész

A szkript a következőképpen működik:

  • A szkript az x változót 10-re állítja.
  • A while ciklus folytatja az iterációt, miközben az x értéke nagyobb, mint nulla.
  • Az alvás parancs minden alkalommal 1 másodpercre szünetelteti a szkriptet a ciklus körül.
  • A szkript többi része minden iterációnál törli a képernyőt, megjeleníti az "x másodperc a felrobbanásig" üzenetet, és kivonja az 1-et az x értékéből.
Linux alvás szkriptben

Az alvás parancs nélkül a szkript nagyítana, és az üzenetek túl gyorsan jelennének meg.

Az alvó parancskapcsolók használata

Az alvás parancsnak csak néhány kapcsolója van.

Az --Segítség kapcsoló az alvás parancs súgófájlját mutatja. Ugyanezt érheti el a man paranccsal az alábbiak szerint:

ember alszik. 

Az --változat kapcsoló mutatja a rendszerre telepített alvásparancs verzióját.

A --version kapcsoló által visszaadott információ a következő:

  • Verziószám
  • Szerzői jogi részletek
  • Engedély
  • Szerzői

A terminálparancsok szüneteltetése alvó üzemmódban

Az alvás parancs másik jó felhasználási módja a terminálablakba beírt parancsok szüneteltetése.

Ha akarja, beírhat két parancsot egymás után, megvárva, amíg az első befejeződik, mielőtt begépelné a másodikat.

Gyorsabb megoldás azonban az, ha a két parancsot egy sorba írjuk be, az egyes parancsok közé egy alvás parancsot helyezve:

$ cd /sajátkönyvtár/ && alvás 3 && ls. 

Hogyan működik ez a parancs:

  • Az cd /sajátkönyvtár/ parancs megváltoztatja a könyvtárat.
  • Az alvás 3 parancs három másodpercet vár, amíg a cd parancs befejeződik.
  • Az ls parancs végrehajtja és megjeleníti a könyvtár tartalmát.

Egy ilyen egyszerű példa esetében az alvás parancs csak egy kis időt takarít meg. Ha azonban hosszú a parancsok listája, a parancsok egy sorba történő beírása időt takarít meg.