inizio qui una serie di piccole lezioni o meglio "ricette" per imparare i rudimenti della programmazione in Bash.
Innanzitutto Bash significa "Born Again SHell". Praticamente si tratta di una copia libera della primissima Shell unix di proprietà della americana AT&T di cui si erano conservati i diritti.
Per maggiori info cercate su google "Storia di Unix"
La shell (chiamata impropiamente anche Terminale o Console) è un ambiente di sviluppo ove possiamo dare direttamente comandi, come per esempio formattare un HD, oppure creare script usando i comandi interni o esterni alla shell.
cominciamo com il primissimo e classico esempio di tutti i linguaggi di programmazione:
Codice: Seleziona tutto
$ touch Ciao.Mondo.sh
$ mcedit Ciao.Mondo.sh
"touch" significa "tocca", e viene anche usato per creare un file vuoto. In questo caso crea il file Ciao.Mondo.sh
.sh lo aggiungo per capire che si tratta di uno script di shell
"mcedit" è l' editor di testo di "mc". Per chi non lo conoscesse cercate la discussione di Midnigth Commander
Quindi "mcedit Ciao.Mondo.sh" apre il file vuoto che abbiamo appena creato con "touch"
Scriviamo dentro al file, il seguente codice
Codice: Seleziona tutto
#!/bin/bash
clear
echo Ciao Mondo!
Come vedete si tratta di un linguaggio molto semplice. La prima linea rimane sempre inalterata (nei sistemi Linux) diciamo che serve allo script per sapere dove si trova la shell ovvero dentro la directory /bin
"clear" serve per pulire lo schermo
"echo" è equivalente a "PRINT" del basic e serve per mostrare a video i messaggi.
A questo punto lo script è pronto, ma non funziona ancora per via della mancanza del permesso di esecuzione.
Rimediamo con il seguente comando:
Codice: Seleziona tutto
$ chmod 750 Ciao.Mondo.sh
"chmod" è il comando per cambiare i permessi. I permessi in tutti gli Unix, sono divisi in:
Utente,Gruppo,Altri
7= tutti i permessi compreso esecuzione
5=esecuzione ma senza modifica
0=nessun accesso.
Messi nella sequenza 750, significa: Tutti i permessi per l' utente propietario, Esecuzione per il gruppo, Nessun accesso per gli altri.
Più in la approfondiremo i concetti di permessi di unix.
con "chmod 750", lo script è pronto,ora possiamo lanciarlo con:
Codice: Seleziona tutto
$ ./Ciao.Mondo.sh
il ./ serve per dire al sistema, che lo script si trova nella attuale directory e non dentro al $PATH. (più in la affronteremo anche questo argomento se necessario)
e otterremo:
Codice: Seleziona tutto
Ciao Mondo!