Sleep script Bash mettere in pausa

Quando crei i tuoi script Bash, la loro funzionalità è tale che devi attendere che alcune funzioni al loro interno completino la sua elaborazione prima di procedere. L’attesa all’interno di uno script Bash viene introdotta con il comando “sleep”.

Il comando sleep in Bash ti consente di attendere tutto il tempo che desideri prima di eseguire ulteriori elaborazioni. Questa funzionalità trova un caso d’uso speciale quando trattiamo client e server in Linux.

In un modello server-clienti, a seconda delle sue capacità di gestione, più clienti possono connettersi a un singolo server.
Un cliente avvia sempre una richiesta di connessione, mentre un server l’ ascolta.
Tuttavia, a volte, un server potrebbe essere impegnato nell’elaborazione di altre richieste. Pertanto, dovrebbe essere definita una durata di tempo per il client per la quale lo stesso deve attendere prima di annullare la richiesta di avvio della connessione. Questa durata può essere definita durante l’utilizzo con il comando sleep.

Questo era solo un semplice caso d’uso del comando sleep con il modello cliente-server; tuttavia, questo comando, all’interno di questo modello, può servire anche ad altri diversi scopi. Il nostro motivo è imparare come possiamo dormire in uno script Bash su Ubuntu 20.04 o qualsiasi altra distribuzione Debian. Per fare ciò, abbiamo progettato questo tutorial in modo che tu possa trarne il massimo beneficio una volta che segui gli esempi condivisi.

Come mattere in pausa uno script Bash?

Come mettere in pausa uno script bash, il comando utilizzato è noto come “sleep“. Per eseguire gli esempi ho usato l’ editor gedit se volete potete usare un editor differente. Per tua comodità, la sintassi di questo comando è indicata di seguito:

  • sleep duration

La sintassi si riferisce al numero di secondi, minuti, ore o giorni per i quali desideriamo che il programma venga sospeso. La durata predefinita del sonno è in secondi, il che significa che se esegui il comando “sleep 2”, il tuo programma dormirà semplicemente per 2 secondi. Tuttavia, se desideri che il tuo programma dormi per minuti, ore o giorni, dovrai utilizzare i caratteri “m”, “h” o “d” dopo la durata del sonno per specificare rispettivamente i minuti, le ore o i giorni.

Ora, per comprendere meglio il funzionamento del comando sleep, dovrai leggere i seguenti esempi che abbiamo appositamente progettato per mettere le mani sull’utilizzo del comando sleep in Bash.

1 Esempio:

utilizzo semplice del comando Sleep-Bash:

Il primo esempio è il più semplice di tutti “dormirò solo per 5 secondi” cioè il significato lo dice la frase stessa. Lo script Bash di esempio è mostrato di seguito:

#!/bin/bash
sleep 5
echo “Ho dormito per 5 secondi”

bash sleep 1

In questo script, abbiamo usato il comando sleep con la durata del sonno , che in questo caso era 5 secondi. Ciò significa che, prima di eseguire ulteriori elaborazioni, il nostro script dormirà per cinque secondi. Dopo aver dormito per cinque secondi, il nostro script stamperà un messaggio casuale sul terminale con l’aiuto del comando “echo“.

Visto che ho usato l’ editor gedit devo dare i permessi necessari per eseguire lo script. Se usiamo nano non abbiamo bisogno di dare i permessi.

Aprite un terminale e usate questo comando:

  • chmod +x sleep.sh

Per eseguire questo script usando il terminale, eseguiremo questo comando:

  • bash sleep.sh

Per questo esempio Sleep.sh, è il nome del file in cui è scritto il nostro script Bash.

Una volta eseguito questo comando, il nostro terminale ha aspettato 5 secondi prima di visualizzare il messaggio indicato nel nostro script sul terminale, come mostrato nell’immagine qui sotto:

bash sleep 2

Lo verificherai una volta creato uno script Bash simile e lo eseguirai sul tuo sistema.

2 Esempio:

utilizzo del comando Sleep per confrontare due tempi diversi in Bash:

#!/bin/bash
echo “L’ora attuale è:”
date +”\%H:\%M:%S”
sleep 5
echo “Ho dormito per 5 secondi”
echo “L’ora attuale dopo il comando sleep è:”
date +”%H:%M:%S”

bash sleep 6

In questo script Bash, abbiamo prima utilizzato il comando date per stampare l’ora del corrente sistema nel formato “ore, minuti, secondi”. Successivamente, abbiamo usato il comando sleep per mettere lo script in stop per 5 secondi. Poi di nuovo, abbiamo usato il comando date per stampare l’ora di sistema corrente. Fondamentalmente, volevamo confrontare i due tempi diversi, o in altre parole, volevamo verificare se il nostro comando di sospensione ha effettivamente messo in sospensione il nostro script per 5 secondi o meno.

Questo script Bash può essere eseguito con lo stesso comando che abbiamo usato nel primo esempio. Abbiamo visualizzato l’output di questo script nell’immagine mostrata di seguito:

bash sleep 3

In questo output, puoi notare la differenza tra i due tempi. La prima volta è stata alle 18:13:28, dopo di che il nostro script Bash è rimasto inattivo per 2 secondi. La seconda volta era 18:13:33. Entrambi i tempi differiscono esattamente di 5 secondi, il che implica che il nostro comando di sospensione è stato eseguito correttamente.

3 Esempio:

utilizzo del comando sleep all’interno di un ciclo For in Bash:

Infine, ora progetteremo uno script Bash di esempio che utilizzerà il comando sleep all’interno del “ciclo for”. Puoi prima dare un’occhiata al seguente script Bash che abbiamo progettato per questo scopo.

#!/bin/bash
numbers=(“1” “2” “3” “4” “5” “6” “7” “8” “9” “10” “11”)
len=${#numbers[*]}
echo “Gli elementi dei numeri sono:”
for (( i=0; i<$len; i++))
do
echo “${numbers[$i]}”
echo “Dormo 1 secondo”
sleep 1
done

bash sleep 5

Questo script Bash inizia dichiarando un array chiamato “numeri” e tre valori, ad esempio 1, 2 e 3….. sono stati assegnati a questo array, il che significa che l’array dichiarato ha undici elementi. Ora abbiamo una variabile a cui è stata assegnata la lunghezza di questo arrav, in questo modo il ciclo “for” può scorrere facilmente.  Quindi il nostro script dormirà per un secondo, dopodiché verrà stampato il valore successivo.

Questo script verrà eseguito nello stesso modo in cui abbiamo eseguito i nostri primi due script di esempio. L’output di questo script Bash è mostrato nell’immagine seguente:

bash sleep 4

Grazie! per l’utilizzo della Guida di Linuxiano.

Trovi questo tutorial utile? Condividi con i tuoi amici per tenerlo in vita.
Sii il primo a commentare, apprezzo i tuoi suggerimenti. Per ulteriori domande potete commentare qui sotto.

Fonte: https://linuxiano.altervista.org/2021/10/sleep-script-bash/

Visited 87 times, 1 visit(s) today
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!

Hai dubbi o problemi? Ti aiutiamo noi!

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.
Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
Amazon Music
Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.