[Guida] Bash Fundamentals: come creare script per GNU/Linux

Questa breve guida vuole essere una schematizzazione dei concetti base per programmare con Bash in GNU/Linux.

Come per tutti i linguaggi, tuttavia, anche in questo caso l’unico modo davvero efficace per capirne il funzionamento è leggere tanto, tanto codice.

Programmazione Bash: interazione tra comandi

Prima di capire come è strutturato uno script, è necessario introdurre alcuni concetti chiave. In particolare bisogna capire come i vari comandi eseguibili in Bash riescono ad interagire tra loro. Spesso, infatti, risulta pratico utilizzare diversi comandi in un’unica istruzione, ma si vuole condizionare l’esecuzione delle istruzioni successive alla buona riuscita di quelle precedenti. In tal caso va utilizzato l’operatore &&. Viceversa, l’operatore || esegue la seconda istruzione solo se la prima fallisce.

echo “Hello World” > ciaomondo #creo il file ciaomondo contenente una stringa;
cat ciaomondo && cat nonesisto #stampa contenuto primo file e produce errore file inesistente
cat nonesisto && cat ciaomondo #produce errore

In Linux, tuttavia, bisogna tener presente che si potrebbe non arrivare al risultato atteso. Non tutti i programmi, infatti, funzionano allo stesso modo e potrebbe capitare di dover leggerne la documentazione o addirittura il codice sorgente, per capire in che circostanze quel particolare processo produca un fallimento come risposta.

Per quanto riguarda il redirect dell’I/O ed il pipeline tra processi, invece, potete fare riferimento a questa guida.

redirect error

Shell script

Lo scripting della shell non è utile solo per il raggruppamento di più comandi, ma permette anche di controllare il flusso delle istruzioni basandosi sugli input dell’utente (o di altri processi). La struttura di uno script eseguibile in Bash è semplicissima. Create un nuovo file.sh ed utilizzate come intestazione:

#! /usr/bin/env bash

Questa serve ad indicare alla macchina la posizione dell’interprete che deve eseguire le successive linee di codice contenute nello script. All’interno degli script si possono utilizzare costrutti condizionati, cicli, funzioni ma anche i comandi che generalmente utilizzate nel terminale come cp o ls. Per eseguire un file, poi, basterà recarsi all’interno della cartella che lo contiene e avviarlo con una sintassi simile alla seguente:

./file.sh

Variabili

Per quanto riguarda le variabili, Bash è un linguaggio a tipizzazione dinamica, non è necessario, quindi, specificarne il tipo al momento della loro dichiarazione. Per inizializzare una variabile e, successivamente, richiamarne il valore, la sintassi è:

comando=echo #una variabile può contenere anche un comando Bash
${comando} "Ciao Mondo" #ne richiamo il contenuto con ${ ... } nome[0]="Linus" #inizializzo un array
nome[1]="Richard"
echo ${nome[1]} read -p "inserire un numero: " valore #per inizializzare la variabile tramite input

Bash: condizioni e cicli

Se masticate le basi di programmazione sapete sicuramente a cosa serve condizionare o ciclare una serie di istruzioni all’interno di un programma. In bash l’utilizzo di questo genere di istruzioni funziona come ci si aspetta. Ad esempio, è possibile utilizzare <b>if</b> nel seguente modo:

read -p "inserire un numero: " valore resto=$(expr $valore % 2)
if [ $resto -eq 0 ]; then echo "pari"
else echo "dispari"
fi

bash scripting if example

Quello che ho evidenziato in grassetto è il comando test, che serve proprio a verificare le condizioni. Sono possibili numerose opzioni, visualizzabili da man test. Ad esempio nel seguente screenshot vi ho riportato quelle relative all’esistenza o meno di un file specifico.

bash test command

Per quanto riguarda la creazione di alias e funzioni, infine, potete fare riferimento a questa guida.

sharing-caring-1

Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.

Fonte: https://www.lffl.org/2021/01/guida-bash-fundamentals.html

Visited 9 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.