Am gasit doar cum să așteptați pentru o intrare de utilizator. Cu toate acestea, vreau doar pentru a întrerupe, astfel încât în timp ce, în realitate` nu't bloca computerul meu.
Am incercat de pauză(1), dar se spune -bash: eroare de sintaxă lângă simbol neașteptat '1'
. Cum poate fi făcut?
Utilizați "sleep" comanda.
Exemplu:
sleep .5 # Waits 0.5 second.
sleep 5 # Waits 5 seconds.
sleep 5s # Waits 5 seconds.
sleep 5m # Waits 5 minutes.
sleep 5h # Waits 5 hours.
sleep 5d # Waits 5 days.
Se poate, de asemenea, angaja zecimale atunci când se specifică o unitate de timp; de exemplu, un somn de 1,5 s`
În Python (întrebarea a fost inițial etichetat Python), aveți nevoie pentru a importa modul de timp
import time
time.sleep(1)
sau
from time import sleep
sleep(1)
Pentru shell script este doar
sleep 1
Care execută "sleep" comanda. de exemplu. /bin/sleep
Mi-am dat seama că m-am'm un pic cam tarziu cu acest lucru, dar puteți apela, de asemenea, de somn și trece disired în timp. De exemplu, Dacă am vrut să așteptați 3 secunde pot face:
/bin/sleep 3
4 secunde ar arata astfel:
/bin/sleep 4
Rula mai multe doarme si comenzi
sleep 5 && cd /var/www/html && git pull && sleep 3 && cd ..
Acest lucru va așteptați timp de 5 secunde înainte de a executa primul script, apoi va dormi din nou timp de 3 secunde înainte de a schimba din nou director.
În cadrul script puteți adăuga următoarele între acțiunile pe care le-ar dori la pauză. Acest lucru va întrerupe rutina timp de 5 secunde.
read -p "Pause Time 5 seconds" -t 5
read -p "Continuing in 5 Seconds...." -t 5
echo "Continuing ...."
Puteți face este să așteptați folosind $ÎNTÂMPLARE, un default generator de numere aleatoare. În cele de mai jos sunt folosind 240 de secunde. Sper că vă ajută @
> WAIT_FOR_SECONDS=`/usr/bin/expr $RANDOM % 240` /bin/sleep
> $WAIT_FOR_SECONDS
utilizare capcana de a întrerupe și de a verifica linia de comandă înainte de a rula
trap 'tput setaf 1;tput bold;echo $BASH_COMMAND;read;tput init' DEBUG
apăsați orice tastă pentru a continua
utilizați cu
set-x
pentru a depana linie de comandă