Che cos'è uno script Bash?

What Is Bash Script

Hai mai sentito tuo padre che ti diceva di prendere un bicchiere d'acqua? Hai la possibilità di dire di no, ma i computer non hanno questa scelta. I computer faranno esattamente quello che diresti loro di fare. Bash è solo una shell che ti permette di comunicare con il computer e ti permette di dargli istruzioni. Uno script è fondamentalmente solo un insieme di istruzioni fornite al computer per eseguire diverse attività significative. Uno script ti aiuta ad automatizzare diverse attività insieme al lusso di ottenere risultati più velocemente rispetto alla normale procedura. Normalmente, nel terminale, scrivi un comando bash di base o avanzato e viene eseguito immediatamente. Negli script bash, puoi dare più istruzioni o comandi contemporaneamente e il computer li eseguirà tutti solo quando eseguirai lo script. In poche parole, un singolo comando bash può essere eseguito nel terminale ma per eseguire una combinazione di più comandi contemporaneamente, è necessario creare uno script bash.

Perché bash è utile e per chi è utile?

Se desideri un maggiore controllo sul tuo sistema operativo e desideri eseguire diverse attività relative al sistema operativo, bash è la tua strada da percorrere. Per bash, non ci riferiamo solo al linguaggio di scripting, ma anche agli strumenti forniti con il sistema operativo Linux. Ogni singolo strumento su Linux ha il suo lavoro e ognuno svolge un compito diverso individualmente. Bash è davvero utile ogni volta che hai bisogno di combinare tutti quegli strumenti e concatenarli insieme in modo tale che tutti lavorino in armonia per svolgere un compito che è davvero difficile da fare altrimenti. Ad esempio, tutto ciò che ha a che fare con il sistema operativo Linux può essere eseguito anche in altri linguaggi di programmazione come Python o Perl, ma è molto difficile eseguire diverse attività relative al sistema operativo. Un modo semplice, in bianco e nero e più semplice per fare qualsiasi cosa riguardante il sistema operativo Linux è usare bash. Per chiunque desideri eseguire attività che includono gli strumenti del sistema operativo Linux (come ls, cd, cat, touch, grep, ecc.), è davvero utile imparare bash invece di qualsiasi altro linguaggio di programmazione.



Come Bash si confronta con altri linguaggi di programmazione?

Se parliamo di bash, allora sappiamo che bash non è un linguaggio di programmazione generico ma un interprete della riga di comando. Bash è davvero utile per eseguire attività su diversi strumenti e processi con la capacità di combinare diversi processi insieme e farli lavorare tutti verso un unico obiettivo. Bash è davvero utile quando si tratta di gestire e manipolare gli input e gli output, cosa davvero difficile da fare in altri linguaggi di programmazione generici come Python, C, ecc. Tuttavia, quando si tratta di strutture dati e compiti complessi come poiché manipolando dati complessi, bash non può gestire tali attività e dobbiamo guardare a linguaggi di programmazione come Python, Perl, C, ecc. Nei linguaggi di programmazione, puoi creare software o uno strumento ma non puoi creare nessuno dei due in bash. Tuttavia, puoi usare bash per eseguire gli strumenti o unire questi strumenti per funzionare in modo efficiente. È come costruire un razzo, se consideriamo questa metafora, i linguaggi di programmazione ti aiuteranno a costruire il razzo mentre bash ti aiuterà a guidare il razzo e ti aiuterà a impostare la sua direzione e ad atterrarlo sulla luna o su Marte.



Come creare ed eseguire script Bash?

Per creare uno script bash, devi prima creare un file di testo con l'estensione .sh alla fine del nome del file. Puoi creare il file di scripting bash usando il terminale.



$toccoscript.sh


Dopo aver digitato il comando sopra, premi il tasto Invio e avresti un file di script bash creato nella directory di lavoro corrente. Ma non è tutto, abbiamo creato il file di scripting ma dobbiamo eseguire determinate azioni per completare lo script ed eseguirlo. Prima di tutto, apri il file di scripting in un nano editor o gedit e nella primissima riga digita:

#!/bin/bash


Questa è una prima riga standard per ogni file di script bash che lo aiuta a essere riconosciuto come script bash. Qualsiasi script che non contenga #!/bin/bash nella prima riga non sarebbe considerato uno script bash, quindi assicurati di aggiungere questa riga all'inizio di ogni script. Una volta aggiunta questa riga, ora puoi iniziare a scrivere nello script. Ad esempio, scriverei qui un semplice comando echo:

$buttato fuoriQuesto è LinuxHint, la migliore piattaforma di apprendimentoperbash


Una volta che hai scritto questo comando, ora puoi andare avanti salvarlo e tornare al tuo terminale. Scrivi nel tuo terminale:



$ls -al


Puoi vedere 'script.sh' scritto in colore bianco, il che è un segno che lo script è un file non eseguibile poiché i file eseguibili sono solitamente di colore verde. Inoltre, dai un'occhiata al lato sinistro dove potremmo vedere un modello come -rw-r–r– che riflette che il file è solo leggibile e scrivibile.
La prima parte contenente 'rw' sono i permessi per il proprietario probabilmente l'utente corrente.

La seconda parte contenente 'r' è l'autorizzazione per il gruppo in cui abbiamo più utenti.

Mentre la terza parte contenente 'r' è l'autorizzazione per il pubblico, il che significa che chiunque può avere queste autorizzazioni per il file menzionato.

'r' sta per permessi di lettura, 'w' sta per permessi di scrittura, 'x' sta per permessi eseguibili. Chiaramente, non vediamo x contro 'script.sh'. Per aggiungere autorizzazioni eseguibili, ci sono due modi per farlo.

Metodo 1

In questo metodo, potresti scrivere un semplice comando chmod con '+x' e aggiungerebbe i permessi eseguibili.

$chmod+ x script.sh


Tuttavia, questo non è il modo più efficiente per fornire autorizzazioni eseguibili in quanto concede autorizzazioni eseguibili non solo al proprietario ma anche al gruppo e al pubblico, cosa che certamente non vogliamo per motivi di sicurezza. Guarda:

Metodo 2

In questo metodo, puoi usare i numeri per dettare le autorizzazioni di un file. Prima di addentrarci in questo, vorrei darti una breve idea di cosa significano quei numeri e come puoi usarli per manipolare i permessi.
leggi = 4
scrivere = 2
eseguire = 1
I numeri di autorizzazione sarebbero in tre cifre dopo il comando chmod e ogni cifra rappresenta i permessi del proprietario, del gruppo e di altri (pubblici). Ad esempio, concedere autorizzazioni di lettura, scrittura ed esecuzione al proprietario e autorizzazioni di lettura al gruppo e ad altri sarebbe qualcosa del genere:

$chmod 744script.sh


Se potessi notare, allora arriveresti alla conclusione che abbiamo aggiunto i numeri di lettura, scrittura ed esecuzione per il proprietario nella prima cifra come 4 + 2 + 1 = 7, e per il gruppo e gli altri usiamo la cifra di lettura cioè 4.

Esegui uno script Bash

Ora finalmente abbiamo raggiunto un punto in cui possiamo eseguire lo script bash. Per eseguire il tuo script bash, devi assicurarti di essere nella directory di lavoro attuale in cui risiede il tuo script. Non è obbligatorio ma in questo modo è facile in quanto non devi scrivere l'intero percorso. Una volta fatto, ora vai avanti e scrivi nel tuo terminale ./nameofscript.sh. Nel nostro caso, il nome dello script è 'script.sh', quindi scriveremmo:

$./script.sh

3 semplici esempi di script Bash

Ciao LinuxSuggerimento
Prima di tutto, creeremmo un file bash nell'attuale directory di lavoro:

$nanoF_script.sh


All'interno del file è necessario scrivere quanto segue:

#!/bin/bash
buttato fuori 'Ciao LinuxSuggerimento'


Dopo averlo scritto, ora prova a premere Ctrl+O per scrivere le modifiche al file, quindi se vuoi mantenere il nome lo stesso premi invio, altrimenti modifica il nome, quindi premi invio. Ora premi Ctrl+X per uscire dall'editor nano. Ora vedresti un file chiamato F_script.sh nella tua directory attuale.
Per eseguire questo file puoi modificare i suoi permessi per renderlo eseguibile oppure puoi scrivere:

$bashF_script.sh


Comando Eco
Quando parliamo del comando echo, è semplicemente usato per stampare praticamente tutto ciò che vuoi stampare purché sia ​​scritto tra virgolette. Normalmente quando si esegue un comando echo senza alcun flag, lascia una riga e poi stampa l'output. Ad esempio, se abbiamo uno script:

#!/bin/bash
buttato fuori 'Stampa sulla riga successiva'

Dopo che è stato salvato, se lo eseguiamo:

$bashF_script.sh


Se usiamo il flag '-n' con echo, stampa sulla stessa riga.

#!/bin/bash
buttato fuori -n 'Stampa sulla stessa riga'

Dopo che è stato salvato, se lo eseguiamo:

$bashF_script.sh


Allo stesso modo, se usiamo ' ' o ' ' tra virgolette, verrà stampato così com'è.

#!/bin/bash
buttato fuori ' Stampa suTla stessa linea '


Tuttavia, se usiamo il flag '-e', non solo tutto scompare, ma applica anche e e potresti vedere le modifiche nell'output di seguito:

#!/bin/bash
buttato fuori -e ' Stampa suTla stessa linea '


Commenti in BASH
Un commento è una riga che non ha importanza per il computer. Qualunque cosa scrivi come commento viene annullata o ignorata dal computer e non ha alcun impatto sul codice scritto. I commenti sono generalmente considerati un modo più utile per un programmatore di comprendere la logica del codice in modo che quando torna a rielaborare i pezzi di codice, quei commenti potrebbero ricordargli la logica e le ragioni per cui ha scritto il codice in uno specifico modo. I commenti possono essere utilizzati anche da altri programmatori che potrebbero voler apportare modifiche al codice. Se hai scritto un pezzo di codice e non vuoi rimuoverlo ma vuoi vedere l'output senza quel pezzo di codice specifico, puoi commentare quel pezzo di codice specifico e andare avanti ed eseguire. Il tuo programma funzionerà bene, ti darebbe buoni risultati mentre quel codice extra è ancora presente nel tuo script ma non è efficace a causa dei commenti. Ogni volta che vuoi usare di nuovo quel pezzo di codice, vai avanti e decommenta quelle righe e sei a posto.
Ci sono due modi per scrivere commenti in bash; un modo è scrivere commenti a riga singola mentre l'altro modo è usato per scrivere commenti su più righe.

Commenti a riga singola
Nei commenti a riga singola, utilizziamo un segno '#' che aiuta a commentare l'intera riga. Qualsiasi cosa scritta sulla riga seguita da '#' sarebbe considerata un commento e non avrebbe alcun valore reale durante l'esecuzione dello script. Questo commento a riga singola può essere utilizzato per comunicare la logica e la comprensione del codice a qualcuno che ha accesso al codice.

#!/bin/bash
buttato fuori -e ' Stampa suTla stessa linea '
#Questo script ci aiuta ad applicare la combinazione / di /n e /t



Commenti su più righe
Supponiamo che tu voglia commentare un centinaio di righe nel tuo script. In tal caso, sarebbe difficile per te utilizzare commenti a riga singola. Non vuoi perdere tempo a mettere # su ogni riga. Possiamo usare ':' e poi 'qualunque commento'. Ti aiuterebbe a commentare più righe semplicemente digitando 3 simboli che sono pratici e utili.

#!/bin/bash'
: 'Questo è lo script che assicura
che e funzionano e vengono applicati
inun modo per ottenere l'output richiesto'
buttato fuori -e ' Stampa suTla stessa linea '



Dai un'occhiata a 30 esempi di script Bash su Linuxhint.com:

30 esempi di script Bash

6 lezioni più importanti in Bash Scripting

1. Dichiarazione condizionale
L'istruzione condizionale è uno strumento molto utile nel processo decisionale. È ampiamente utilizzato nei linguaggi di programmazione. Più spesso, dobbiamo prendere decisioni basate su determinate condizioni. L'istruzione condizionale valuta la condizione data e prende la decisione. In bash, usiamo anche l'istruzione condizionale come qualsiasi altro linguaggio di programmazione. La sintassi dell'utilizzo dell'istruzione condizionale in bash è leggermente diversa dagli altri linguaggi di programmazione. La condizione if è l'istruzione condizionale più comunemente usata in bash e in altri linguaggi di programmazione generici. La condizione if valuta la condizione data e prende la decisione. La condizione data è anche chiamata espressione di prova. Esistono numerosi modi per utilizzare la condizione if in bash. La condizione if viene utilizzata con il blocco else. Nel caso, se la condizione data è vera, allora vengono eseguite le istruzioni all'interno del blocco if, altrimenti viene eseguito il blocco else. Esistono diversi modi per utilizzare l'istruzione if condition in Bash, che sono i seguenti:

  1. L'istruzione if
  2. L'istruzione if else
  3. L'istruzione if annidata
  4. L'istruzione if elif

L'istruzione if
L'istruzione if valuta solo la condizione data, se la condizione data è vera, allora vengono eseguite le istruzioni oi comandi all'interno del blocco if, altrimenti il ​​programma viene terminato. In bash, se la condizione inizia con la parola chiave if e termina con la parola chiave fi. La parola chiave then viene utilizzata per definire il blocco di istruzioni o comandi che vengono eseguiti quando una determinata condizione è vera. Dichiariamo una variabile e usiamo la condizione if per valutare il valore della variabile se è maggiore di 10 o meno. Il -gt viene utilizzato per valutare la condizione maggiore di mentre -lt viene utilizzato per valutare la condizione minore di.

#!/bin/bash
DOVE=100
#dichiarare la condizione if
Se [ $ VAR -gt 10 ]
poi
buttato fuori 'Il$ VARè maggiore di 10'
#fine della condizione if
essere


L'istruzione if else
L'istruzione if else viene utilizzata anche come istruzione condizionale. Le istruzioni oi comandi dopo la condizione if vengono eseguiti se la condizione data è vera. Altrimenti, il blocco else viene eseguito se la condizione data non è vera. Il blocco else è seguito dal blocco if e inizia con la parola chiave else.

#!/bin/bash
DOVE=7
#dichiarare la condizione if
Se [ $ VAR -gt 10 ]
poi
buttato fuori 'Il$ VARè maggiore di 10'
#dichiarare il blocco degli altri
altro
buttato fuori 'Il$ VARè inferiore a 10'
#fine della condizione if
essere


È possibile valutare più condizioni utilizzando la condizione if. Possiamo usare l'operatore and (&) e o l'operatore (II) per valutare le condizioni multiple all'interno di una singola istruzione if.

#!/bin/bash
DOVE=venti
#dichiarare la condizione if
Se [[ $ VAR -gt 10 && $ VAR -lt 100 ]]
poi
buttato fuori 'Il$ VARè maggiore di 10 e minore di 100'
#dichiarare il blocco degli altri
altro
buttato fuori 'La condizione non soddisfa'
#fine della condizione if
essere


L'istruzione if annidata
Nell'istruzione if annidata, abbiamo un'istruzione if all'interno di un'istruzione if. Viene valutata la prima istruzione if, se è vera viene valutata l'altra istruzione if.

#!/bin/bash
DOVE=venti
#dichiarare la condizione if
Se [[ $ VAR -gt 10 ]]
poi
#if condizione all'interno di un'altra condizione if
Se [ $ VAR -lt 100 ]
poi
buttato fuori 'Il$ VARè maggiore di 10 e minore di 100'
#dichiarare il blocco degli altri
altro
buttato fuori 'La condizione non soddisfa'
#fine della condizione if
essere
altro
buttato fuori 'Il$ VARè inferiore a 10'
essere


L'istruzione if elif
L'istruzione if elif viene utilizzata per valutare più condizioni. La prima condizione inizia con il blocco if e le altre condizioni sono seguite dalla parola chiave elif. Consideriamo il precedente esempio di numero variabile e implementiamo l'istruzione if elif nel nostro script bash. L'eq è usato come operatore uguale.

#!/bin/bash
DOVE=venti
#dichiarare la condizione if
Se [[ $ VAR -eq 1 ]]
poi
buttato fuori 'Il valore della variabile è uguale a 1 '
elifa [[ $ VAR -eq 2 ]]
poi
buttato fuori 'Il valore della variabile è uguale a 2 '
elifa [[ $ VAR -eq 3 ]]
poi
buttato fuori 'Il valore della variabile è uguale a 2 '
elifa [[ $ VAR -gt 5 ]]
poi
buttato fuori 'Il valore della variabile è maggiore di 5 '
essere


2. Ciclo continuo
I loop sono la parte essenziale e fondamentale di qualsiasi linguaggio di programmazione. A differenza degli altri linguaggi di programmazione, i cicli vengono utilizzati anche in Bash per eseguire un'attività ripetutamente finché la condizione data non è vera. I loop sono iterativi, sono un ottimo strumento per l'automazione di tipi simili di attività. Il ciclo for, while e till viene utilizzato in Bash.
Discutiamo questi loop uno per uno.

Il ciclo while
Il ciclo while esegue ripetutamente le stesse istruzioni o comandi. Valuta la condizione ed esegue le istruzioni oi comandi finché la condizione non è vera.
Questa è la sintassi di base dell'uso di un ciclo while in Bash.

Mentre [ condizione o espressione di prova ]
fare
dichiarazioni
fatto

Implementiamo il ciclo while nel nostro file script.sh. Abbiamo una variabile VAR il cui valore è uguale a zero. Nel ciclo while, abbiamo posto una condizione, che il ciclo dovrebbe essere eseguito fino a quando il valore del VAR è inferiore a 20. Il valore della variabile viene incrementato di 1 dopo ogni iterazione. Quindi, in questo caso, il ciclo inizierà l'esecuzione fino a quando il valore della variabile non sarà inferiore a 20.

#!/bin/bash
DOVE=0
mentre [ $ VAR -lt venti ]
fare
buttato fuori 'Il valore corrente della variabile è$ VAR'
#incrementando il valore di 1 in VAR
DOVE= $((VAR +1))
fatto


Il ciclo for
Il ciclo for è il ciclo più comunemente usato in ogni linguaggio di programmazione. Viene utilizzato per eseguire l'attività iterativa. È il modo migliore per eseguire attività ripetitive. Dichiariamo il ciclo for nel nostro file script.sh e usiamolo per eseguire un'attività ripetitiva.

#!/bin/bash
DOVE=0
per (( io==0; io<venti; io++))
fare
buttato fuori 'Ciao e benvenuto in linuxhint'
#incrementando la variabile i
io= $((io+1))
fatto
buttato fuori 'Questa è la fine del ciclo for'


Il ciclo fino
L'altro tipo di ciclo utilizzato in Bash è il ciclo fino a quando. Inoltre, esegue o esegue la stessa serie di ripetizioni. Il ciclo till valuta la condizione e inizia l'esecuzione fino a quando la condizione data non è falsa. Il ciclo till termina quando la condizione data è vera. La sintassi del ciclo till è la seguente:

fino a [condizione]
fare
dichiarazioni
comandi
fatto

Implementiamo il ciclo till nel nostro file script.sh. Il ciclo till verrà eseguito a meno che la condizione non sia falsa (il valore della variabile è inferiore a 20)

#!/bin/bash
DOVE=0
fino a [ $ VAR -gt venti ]
fare
buttato fuori 'Ciao e benvenuto in linuxhint'
#incrementando la variabile i
DOVE= $((VAR +1))
fatto
buttato fuori 'Questa è la fine del ciclo fino a quando'


3. Leggere dall'utente e scriverlo sullo schermo
La Bash dà la libertà all'utente di inserire alcuni valori di stringa o dati sul terminale. La stringa oi dati inseriti dall'utente possono essere letti dal terminale, possono essere memorizzati nel file e possono essere stampati sul terminale. Nel file Bash, l'input dell'utente può essere letto usando il tasto leggere keyword e la memorizziamo in una variabile. Il contenuto della variabile può essere visualizzato sul terminale utilizzando il comando echo.

#!/bin/bash
buttato fuori 'Scrivi qualcosa sul terminale'
#memorizzazione del valore inserito in VAR
leggereDOVE
buttato fuori 'Sei entrato:$ VAR'


È possibile utilizzare più opzioni con il comando read. Le opzioni più comunemente usate sono -pe -s. Il -p visualizza il prompt e l'input può essere preso nella stessa riga. Il –s prende l'input in modalità silenziosa. I caratteri dell'ingresso vengono visualizzati sul terminale. È utile inserire alcune informazioni sensibili come le password.

#!/bin/bash
leggere -P 'Inserisci l'email:'e-mail
buttato fuori 'Inserire la password'
leggere -Sparola d'ordine


4. Leggere e scrivere file di testo
I file di testo sono i componenti essenziali per leggere e scrivere i dati. I dati vengono memorizzati temporaneamente nei file di testo e possono essere letti facilmente dal file di testo. Innanzitutto, discutiamo della scrittura dei dati nel file di testo e, successivamente, discuteremo della lettura dei dati dai file di testo.

Scrivere i file di testo
I dati possono essere scritti in un file in vari modi:

  • Usando la parentesi ad angolo retto o il segno di maggiore di (>)
  • Utilizzando la doppia staffa ad angolo retto (>>)
  • Usando il comando tee

Segno della parentesi con angelo destro (>) per scrivere i dati
è il modo più comunemente usato per scrivere i dati nel file di testo. Scriviamo i dati e poi mettiamo il segno >. Il segno > punta al file di testo in cui dobbiamo memorizzare i dati. Tuttavia, non aggiunge il file e i dati precedenti del file vengono completamente sostituiti dai nuovi dati.

#!/bin/bash
#utente inserisce il nome del file di testo
leggere -P 'Inserisci nome file:'FILE
#utente inserisce i dati da memorizzare nel file di testo
leggere -P 'Scrivi i dati da inserire nel file:'DATI
#memorizzazione dei dati nel file di testo
# > punta al nome del file.
buttato fuori $DATI > $FILE


Segno della parentesi con angelo destro (>>) per scrivere i dati
Il >> viene utilizzato per memorizzare l'output di qualsiasi comando nel file. Ad esempio, il comando ls -al mostra il contenuto e i permessi di un file in una particolare directory. Il >> memorizzerà l'output nel file.

#!/bin/bash
#utente inserisce il nome del file di testo
leggere -P 'Inserisci nome file:'FILE
#memorizzare l'output del comando nel file
ls -al >> $FILE



Utilizzo del comando tee per scrivere dati nel file di testo
Il comando tee in Bash viene utilizzato per scrivere l'output del comando in un file di testo. Stampa l'output del comando sul terminale e lo memorizza nel file di testo.

#!/bin/bash
#utente inserisce il nome del file di testo
leggere -P 'Inserisci nome file:'FILE
#memorizzare l'output del comando nel file usando il comando tee
ls -al | tee $FILE


Il comando tee sovrascrive i dati esistenti del file per impostazione predefinita. Tuttavia, è possibile utilizzare un'opzione con il comando tee per aggiungere il file.

#!/bin/bash
#utente inserisce il nome del file di testo
leggere -P 'Inserisci nome file:'FILE
#memorizzare l'output del comando nel file usando il comando tee
ls -al | tee -a $FILE


Lettura dei file di testo
Il gatto comando viene utilizzato per leggere i dati dal file. È il più comunemente usato per questo scopo. Stampa semplicemente il contenuto del file di testo sul terminale. Stampiamo il contenuto o i dati del file sul terminale utilizzando il tasto gatto comando.

#!/bin/bash
#utente inserisce il nome del file di testo
leggere -P 'Inserisci nome file:'FILE
#leggere i dati dal file di testo
gatto $FILE


5. Esecuzione di altri programmi da bash
Bash dà l'autorità per eseguire altri programmi dallo script Bash. Usiamo il comando exec per eseguire gli altri programmi da Bash. Il comando exec sostituisce il processo precedente con il processo corrente e avvia il programma corrente. Ad esempio, possiamo aprire l'editor nano, gedit o vim dallo script bash.

#!/bin/bash
#running editor nano di Bash
eseguire nano

#!/bin/bash
#running gedit da Bash
eseguiregedit

Allo stesso modo, possiamo eseguire l'applicazione browser anche da Bash. Eseguiamo il browser Mozilla Firefox.

#!/bin/bash
#firefox in esecuzione
eseguirefirefox


Inoltre, possiamo eseguire qualsiasi programma da Bash usando il comando exec.

6. Elaborazione della riga di comando
L'elaborazione della riga di comando si riferisce all'elaborazione dei dati inseriti nel terminale. I dati della riga di comando vengono elaborati per molti scopi, ad esempio leggere l'input dell'utente, sottostimare i comandi e leggere gli argomenti. In precedenza, abbiamo discusso del comando read. Il comando di lettura viene utilizzato anche per l'elaborazione della riga di comando. In questa sezione, discuteremo l'elaborazione degli argomenti della riga di comando. In Bash, possiamo elaborare gli argomenti passati o scritti sul terminale. Gli argomenti vengono elaborati nello stesso modo in cui vengono passati. Pertanto, si chiama parametri posizionali. A differenza di altri linguaggi di programmazione, l'indicizzazione degli argomenti in Bash inizia con 1. Il simbolo del dollaro ($) viene utilizzato per leggere gli argomenti. Ad esempio, $1 legge il primo argomento, $2 legge il secondo argomento e così via. Gli argomenti possono essere analizzati per vari motivi, ad esempio per ricevere input dall'utente.

#!/bin/bash
buttato fuori 'Inserisci il tuo nome'
#elaborazione del primo argomento
buttato fuori 'Nome di battesimo:' $ 1
#elaborazione del secondo argomento
buttato fuori 'Secondo nome:'$ 2
#elaborazione del terzo argomento
buttato fuori 'Cognome:' $ 3
buttato fuori 'Nome e cognome:' $ 1 $ 2 $ 3


La lettura dei dati dal terminale tramite read e l'analisi degli argomenti sono gli esempi più adatti di elaborazione della riga di comando.

Storia di Bash e confronto con altre shell

La Bash è ora il componente essenziale dei sistemi basati su UNIX e Linux. La Bourne Shell è stata inizialmente sviluppata da Stephen Bourne. Lo scopo previsto del guscio di Stephen Bourne era quello di superare i limiti dei gusci già esistenti in quel momento. Prima della Bourne Shell, UNIX ha introdotto la Thompson Shell. Tuttavia, la shell Thompson era molto limitata nell'elaborazione dello script. Gli utenti non sono stati in grado di eseguire una quantità sufficiente dello script. Per superare tutte queste limitazioni della shell Thompson, è stata introdotta la Bourne Shell. È stato sviluppato presso il Bells Lab. Nel 1989, Brian Fox ha rivoluzionato la Bourne Shell aggiungendo numerose altre funzionalità e chiamandola Bourne Again Shell (BASH).

Nome della conchiglia Anno piattaforma Descrizione Confronto con BASH
Thompson Shell 1971 UNIX L'automazione della sceneggiatura era limitata. L'utente può eseguire solo una piccola quantità di script. Il BASH supera i limiti della shell Thompson e l'utente può scrivere gli script di grandi dimensioni.
Bourne Shell 1977 UNIX Ci consente di scrivere ed eseguire una quantità enorme di script. La Bourne Shell non fornisce l'editor dei comandi e un numero maggiore di servizi di scelta rapida. Il BASH fornisce miglioramenti nel design insieme all'editor dei comandi.
POSIX Shell 1992 POSIX La POSIX Shell è portatile. Fornisce molte scorciatoie e controllo del lavoro. Il BASH è popolare per eseguire quei compiti che non richiedono la portabilità.
Z Shell 1990 UNIX La Z Shell è ricca di funzionalità. È una shell molto potente e fornisce funzionalità come il completamento automatico dei comandi, la correzione ortografica e il riempimento automatico. Il BASH manca di alcune delle funzionalità fornite da Z Shell.

Conclusione

BASH è uno strumento molto potente che ci permette di eseguire comandi e script. Uno script BASH ci consente di automatizzare le attività e i comandi quotidiani. Uno script BASH è una combinazione di più comandi. Il file BASH termina con l'estensione .sh. Prima di eseguire lo script BASH, dobbiamo aggiornare i permessi del file e dobbiamo fornire i permessi eseguibili al file .sh. Questo articolo spiega gli script BASH e BASH con l'aiuto di semplici esempi e lezioni importanti. Inoltre, descrive la storia di BASH e confronta le sue caratteristiche con varie altre potenti shell.