Come esco da una sceneggiatura bash?

Come esco da una sceneggiatura bash?
Potresti aver incontrato molte situazioni in cui devi lasciare la tua sceneggiatura di Bash su qualche inconveniente. Ci sono molti metodi per lasciare la sceneggiatura bash, io.e., Smettila mentre scrivi uno script bash, mentre l'esecuzione o in fase di esecuzione. Uno dei tanti metodi noti per uscire da uno script bash durante la scrittura è la semplice chiave di scelta rapida, i.e., "Ctrl+X". Durante il funzionamento, puoi uscire dal codice usando "Ctrl+Z". Questa guida mostrerà come lo script batch può essere smesso usando le diverse clausole di uscita durante l'esecuzione. Iniziamo accedendo da Ubuntu 20.04 Sistema prima e aprire la shell usando "Ctrl+Alt+T".

Esempio 01: Utilizzo dell'uscita 0

Il primo metodo che abbiamo utilizzato in questo esempio è utilizzare l'istruzione "uscita" nello script bash. Crea un nuovo file nella shell con l'aiuto di un comando "touch" e aprilo in qualsiasi editor.

L'istruzione di lettura è ampiamente nota per ottenere input dall'utente. Qui ci vorranno i valori interi in fase di esecuzione e li salverà nella variabile "X". L'istruzione "if" ha verificato una condizione. Se il valore di "x" inserito da un utente viene eguagliato a 5, visualizzerà che il numero viene abbinato tramite l'istruzione Echo. La clausola "Exit 0" è stata usata qui. Dopo aver eseguito la dichiarazione "Echo", lo script bash verrà smesso e non verrà eseguita più esecuzione a causa di "Exit 0". Altrimenti, se la condizione non soddisfa, verrà eseguita la dichiarazione "eco" al di fuori della dichiarazione "if".

Esegui il tuo file bash con l'aiuto di una query bash nella shell. L'utente ha aggiunto 4 come input. Poiché 4 non è uguale a 5, non esegue la parte "allora" dell'istruzione "if". Quindi, non accadrà un'uscita improvvisa. D'altra parte, la dichiarazione Echo al di fuori della dichiarazione "if" eseguita afferma che "il numero non corrisponde ..." e il programma termina qui.

$ bash bash.sh

Esegui nuovamente lo stesso codice con il comando bash. L'utente ha aggiunto 5 questa volta. Come 5 soddisfa la condizione, è stata eseguita la dichiarazione "eco" all'interno della clausola "allora". Successivamente, il programma si ferma rapidamente a causa dell'uso di "Exit 0".

$ bash bash.sh

Esempio 02: Utilizzo dell'uscita

Invece di usare "Exit 0", puoi semplicemente usare "uscita" nello script bash per uscire dal codice. Quindi, apri lo stesso file e aggiorna il tuo codice. Solo la clausola di "uscita" è stata cambiata qui, io.e., Sostituito da "uscita". L'intero file è rimasto invariato. Salviamo prima il codice usando "Ctrl+S" e smettiamo usando "CRL+X". Eseguiamolo per vedere se funziona uguale alla clausola "Exit 1".

Esegui il file bash “Bash.sh "nel terminale utilizzando il comando mostrato nello screenshot allegato. L'utente ha inserito il valore "6" e non ha soddisfatto la condizione. Pertanto, il compilatore ignora la clausola "allora" dell'istruzione "if" ed esegue la clausola Echo al di fuori dell'istruzione "if".

$ bash bash.sh

Eseguire di nuovo lo stesso file. Questa volta l'utente ha aggiunto 5 come soddisfacente la condizione. Pertanto, lo script bash esce subito dopo aver eseguito la clausola "eco" all'interno dell'istruzione "if".

$ bash bash.sh

Esempio 03: Utilizzo dell'uscita 1

È inoltre possibile utilizzare la clausola "uscita" per uscire dalla sceneggiatura bash, affermandola con esso in fase di esecuzione. Quindi, apri lo stesso file e aggiorna il tuo codice che abbiamo fatto prima. L'unico cambiamento è "Exit 1" anziché "Exit" o "Exit 0". Salva il codice e lascia l'editor tramite "Ctrl+S" e "Ctrl+X".

Alla prima esecuzione, l'utente ha aggiunto 6 come input. La condizione non soddisfa e i comandi all'interno dell'istruzione "if" non verranno eseguiti. Quindi, non è avvenuta un'uscita improvvisa.

$ bash bash.sh

Al secondo tentativo, l'utente ha aggiunto 5 per soddisfare la condizione. Quindi, i comandi all'interno dell'istruzione "if" vengono eseguiti e il programma esce dopo aver eseguito la clausola "Echo".

$ bash bash.sh

Esempio 04

Facciamo uso della clausola "Exit 1" nello script bash al controllo di diverse situazioni. Quindi, abbiamo aggiornato il codice dello stesso file. Dopo il supporto bash, l'istruzione "if" è stata inizializzata per verificare se l'utente attualmente accede, i.e., "Linux" non è l'utente di root. Se la condizione soddisfa, l'istruzione Echo all'interno della clausola "allora" verrà eseguita e il programma uscirà proprio qui. Se l'account attualmente loggato è un utente root, continuerà a eseguire le dichiarazioni al di fuori dell'istruzione "if". Il programma continuerà a ottenere due input da un utente e calcolare la somma di entrambi i numeri interi. Verrà visualizzata la "somma" calcolata e quindi il programma uscirà.

Poiché l'account "Linux" non è un utente root del nostro Ubuntu 20.04, l'esecuzione di questo codice ha eseguito solo l'istruzione "if" e le clausole tra di essa. Il programma smette dopo questo.

$ bash bash.sh

Esempio 05: usando "set -e" integrato

Il "set -e" integrato è ampiamente noto per uscire dal programma dopo aver incontrato lo stato diverso da zero. Quindi, abbiamo aggiunto 3 funzioni a doppio nome con 1 istruzione Echo e una clausola di stato di ritorno in ciascuno. Il "set +e" viene inizializzato prima di chiamare i primi due metodi e "set -e" viene utilizzato dopo e due funzioni vengono chiamate successivamente.

Al momento dell'esecuzione, le dichiarazioni di eco della funzione Show1 e Show2 saranno eseguite e il programma non smetterà. Mentre dopo "set -e" il programma si smette dopo l'esecuzione dell'istruzione Echo del metodo Show2 () mentre incontra "Return 1". Il metodo show3 non verrà chiamato dopo.

Dopo aver eseguito questo codice, abbiamo ottenuto l'output come previsto. Dopo aver incontrato lo stato di ritorno 1, il programma si è fermato senza eseguire il metodo "show3 ()".

$ bash bash.sh

Conclusione

Questa guida copre tutti i modi possibili per uscire da qualsiasi script bash durante la scrittura, l'esecuzione o l'esecuzione. Pertanto, prova ad implementare ogni esempio trattato in questo articolo per ottenere una comprensione più chiara.