Android

Hur man använder linux-sömnkommandot för att pausa ett bash-skript

How to delete files using rm command in Linux? || rm || rm -r

How to delete files using rm command in Linux? || rm || rm -r

Innehållsförteckning:

Anonim

Sleep är ett kommandoradsverktyg som låter dig avbryta samtalsprocessen under en viss tid. Med andra ord pausar sömnkommandot exekveringen på nästa kommando under ett visst antal sekunder.

Sömnkommandot är särskilt användbart när det används i ett bash shell-skript, till exempel när du försöker igen en misslyckad operation eller inuti en slinga.

I den här tutorialen visar vi dig hur du använder Linux-sömnkommandot.

Hur man använder sömnkommandot

Syntaxen för sömnkommandot är som följer:

sleep NUMBER…

NUMBER kan vara ett positivt heltal eller ett flytande punktnummer.

SUFFIX kan vara ett av följande:

  • s - sekunder (standard) m - minuter h - timmar d - dagar

När inget suffix används är det standardvärde till sekunder.

När två eller flera argument anges är den totala tiden motsvarande summan av deras värden.

Här är några enkla exempel som visar hur du använder sömnkommandot:

  • Sov i 5 sekunder:

    sleep 5

    Sov i 0, 5 sekunder:

    sleep 0.5

    Sov i 2 minuter och 30 sekunder:

    sleep 2m 30s

Exempel på Bash-skript

Nedan är det mest grundläggande exemplet på hur du använder sömnkommandot i dina Bash-skript. När du kör skriptet kommer det att skriva ut aktuell tid i HH:MM:SS format. Sedan kommer sömnkommandot att pausa skriptet i 5 sekunder. När den angivna tidsperioden går, kommer den sista raden i skriptet att skriva ut den aktuella tiden.

#!/bin/bash # start time date +"%H:%M:%S" # sleep for 5 seconds sleep 5 # end time date +"%H:%M:%S"

Utgången ser ut så här:

13:34:40 13:34:45

Låt oss ta en titt på ett mer avancerat exempel.

#!/bin/bash while: do if ping -c 1 ip_address &> /dev/null then echo "Host is online" break fi sleep 5 done

Skriptet ovan kommer att kontrollera om en värd är online eller inte var femte sekund och när värden går online kommer skriptet att meddela dig och stoppa.

Så fungerar manus:

  • I den första raden skapar vi ett oändligt medan loop. Då använder vi ping-kommandot för att avgöra om värden med IP-adressen för ip_address kan nås eller inte. Om värden kan nås kommer skriptet att eko “Host is online” och avsluta loopen. Om värden inte kan nås pausar sömnkommandot skriptet i 5 sekunder och sedan startar slingan från början.

Slutsats

Nu bör du ha en god förståelse för hur du använder Linux-sömnkommandot.

Sömnkommandot är ett av de enklaste skalkommandona och accepterar bara ett argument som används för att specificera sömnintervallet.

sömnterminal