Vai al contenuto

Imparare il Bash con Rocky

In questa sezione, imparerete a conoscere meglio lo scripting Bash, un esercizio che ogni amministratore dovrà eseguire un giorno o l'altro.

Generalità

La shell è l'interprete dei comandi di Linux. È un binario che non fa parte del kernel, ma costituisce un livello aggiuntivo, da cui il nome "shell".

Analizza i comandi inseriti dall'utente e li esegue dal sistema.

Esistono diverse shell, tutte accomunate da alcune caratteristiche. L'utente è libero di utilizzare quello che più gli aggrada. Alcuni esempi sono:

  • la shell Bourne-Again(bash),
  • la shell Korn(ksh),
  • la shell C(csh),
  • etc.

bash è presente per impostazione predefinita nella maggior parte (tutte) le distribuzioni Linux. Si caratterizza per le sue caratteristiche pratiche e di facile utilizzo.

La shell è anche un linguaggio di programmazione di base che, grazie ad alcuni comandi dedicati, permette:

  • l'uso di variabili,
  • esecuzione condizionale dei comandi,
  • la ripetizione dei comandi.

Gli script di shell hanno il vantaggio di poter essere creati in modo rapido e affidabile, senza compilare o installare comandi aggiuntivi. Uno script di shell è solo un file di testo senza abbellimenti (grassetto, corsivo, ecc.).

Nota

Sebbene la shell sia un linguaggio di programmazione "di base", è comunque molto potente e talvolta più veloce di un codice compilato male.

Per scrivere uno script di shell, è sufficiente inserire tutti i comandi necessari in un unico file di testo. Rendendo questo file eseguibile, la shell lo legge in sequenza ed esegue i comandi in esso contenuti uno per uno. È anche possibile eseguirlo passando il nome dello script come argomento al binario bash.

Quando la shell incontra un errore, visualizza un messaggio per identificare il problema, ma continua a eseguire lo script. Esistono però dei meccanismi per interrompere l'esecuzione di uno script quando si verifica un errore. Gli errori specifici dei comandi vengono visualizzati anche sullo schermo o all'interno dei file.

Che cos'è una buona script? Lo è:

  • affidabile: il suo funzionamento è impeccabile anche in caso di uso improprio;
  • commentata: il suo codice è annotato per facilitarne la rilettura e l'evoluzione futura;
  • leggibile: il codice è indentato in modo appropriato, i comandi sono distanziati, ...
  • portabile: il codice viene eseguito su qualsiasi sistema Linux, gestione delle dipendenze, gestione dei diritti, ecc.

Author: Antoine Le Morvan

Contributors: Steven Spencer, Ganna Zhyrnova