Come mettere in Pausa uno Script Bash Con Linux il Comando di Sospensione

0
1488
Fatmawati Achmad Zaenuri/Shutterstock.com

Il comando di sospensione rende il vostro computer Linux non fare nulla. Contro-intuitivo, forse, ma un periodo di inattività a volte è proprio ciò che è necessario. In questo articolo viene illustrato come utilizzare questo Bash shell di comando in modo efficace.

Utilizzando il sonno è facile. Sulla riga di comando tipo di sonno, uno spazio, un numero, quindi premere Invio.

dormire 5

Il cursore scompare per cinque secondi e poi tornare. Che cosa è successo? Utilizzando il sonno sulla riga di comando indica Bash di sospendere il trattamento per la durata che hai fornito. Nel nostro esempio, questo, di cinque secondi.

Siamo in grado di trasmettere la durata a dormire in giorni, ore, minuti, secondi. Per fare questo includono un suffisso d, h, m, o, s con la durata. A causa del sonno per mettere in pausa per un giorno, quattro ore, sette minuti e cinque secondi, utilizzare un comando come questo:

sonno 1d 4h 7m 5s

S suffisso (per i secondi) è facoltativo. Senza suffisso, di dormire il trattamento di qualsiasi durata, in secondi. Si supponga di voler avere sonno una pausa di cinque minuti e venti secondi. Un formato corretto di questo comando è:

sonno 5m 20

Se si dimentica di fornire il m suffisso a minuti di durata, si indicherà il sonno per mettere in pausa per cinque secondi e poi di nuovo per una ventina di secondi. Così il sonno sarà in pausa per 25 secondi.

Molti comandi richiedono di fornire parametri in un ordine specifico, ma il sonno è molto indulgente. È in grado di fornire in qualsiasi ordine e di dormire sempre un senso di loro. È inoltre possibile fornire un numero in virgola mobile come parametro. Per esempio, 0,5 h è un valido modo per indicare che si desidera dormire per una pausa di mezz’ora.

Tutti i seguenti (sempre più eccentrico) comandi di sonno per mettere in pausa per 10 secondi.

dormire 10
dormire 5 5s
Dormire 1 1 1 1 1 1 1 2
sonno 0.16667 m

Utilizzando il Sonno per mettere in Pausa Prima di un Comando

Il comando di sospensione può essere usato per dare una pausa prima dell’esecuzione di un comando. Questo comando di pausa per 15 secondi e poi dare un segnale.

dormire 15 && echo -en “07′

Utilizzo della Sospensione per la Pausa Tra Due Comandi

È possibile utilizzare la modalità sospensione per dare una pausa tra due comandi. Questo comando elenca i file nella directory Documenti, mettere in pausa per cinque secondi e poi cambia la directory di lavoro corrente per la vostra home directory:

ls -R ~/Documents && sleep 5 && cd ~

Utilizzando il Sonno per Sospendere l’Esecuzione di uno Script

È possibile utilizzare il comando di sospensione in script di shell per sospendere l’esecuzione dello script per un preciso lasso di tempo. In genere, devi fare questo per consentire ad alcuni di processo tempo sufficiente per completare prima che lo script continua la sua elaborazione. Si può anche usare per limitare le richieste di uno script fa un’altra risorsa.

Per dimostrare esattamente che qui è uno script che si chiama fuori da Google a un servizio web utilizzando curl. Quando si esegue una query del servizio web con il codice ISBN di un libro, risponde con un dump di dati JSON per quanto riguarda il libro. Siamo in grado di analizzare i dati, passando attraverso la jq utilità per recuperare il titolo del libro. In modo che lo script non lo stress il web service, posti letto, per un secondo, tra le richieste web.

Creare un file contenente il testo seguente, e salvarlo come check_book.sh.

#!/bin/bash

per il libro in `cat $1`
fare
echo $libro”:”
curl-s https://www.googleapis.com/books/v1/volumes?q=isbn:$libro | jq ‘.voci | .[] | .volumeInfo.titolo
echo “”
sonno 1
fatto

echo “Tutto fatto”.

Digitare il seguente comando per impostare i permessi di esecuzione e di rendere lo script eseguibile.

chmod +x check_book.sh

Lo script richiede il curl e jq utilità. L’uso di apt-get per installare questi pacchetti sul vostro sistema se si sta utilizzando Ubuntu o un’altra distribuzione basata su Debian. Su altre distribuzioni Linux, usare la vostra distribuzione di Linux strumento di gestione dei pacchetti, invece.

sudo apt-get install curl
sudo apt-get install jq

Creare un file di testo contenente i seguenti numeri e salvarlo come books.txt.

9781565921276
9781874416685
9781565921672
9780521431088
9781491941591

Eseguire il check_book.sh script e passare il books.txt file come parametro.

./check_book.sh books.txt

La richiesta di Google di servizio web ad intervalli di un secondo. Il titolo del libro che apparirà poco dopo ogni numero ISBN è interrogato.

Che è il sonno. Il funzionamento interno di una check_book.sh script sono oltre la portata di questo articolo. La sceneggiatura è stata scelta solo esclusivamente per illustrare un valido utilizzo del comando di sospensione. Se desideri leggere più circa i due componenti principali di script, consultare il curl pagina del progetto e la jq manuale on-line.