giovedì 7 agosto 2014

[Shell Programming] Variabili e aritmetica nella Bash

Eccoci alla seconda puntata sul Shell Programming. Nello scorso post abbiamo visto un introduzione alla Bash. Oggi andremo più a fondo nella comprensione della shell.



Nella prima parte di questo post ci occuperemo delle variabili. Nei sistemi Linux ve ne sono due tipi:
1 - Variabili di sistema;
2 - Variabili utente;
 

VARIABILI DI SISTEMA
Le variabili di sistema sono quelle necessarie al funzionamento del pinguino e quindi ne è sconsigliata la modifica. Si riconoscono dalle altre dal fatto che sono definite in lettere maiuscole. Una piccola lista è:
  •  BASH : la nostra bash.
  •  USERNAME : il nostro username.
  •  BASH_VERSION : la versione della bash.
  •  HOME : la cartella home.
  •  PWD : la cartella in cui stiamo lavorando ora.
  •  OSTYPE : il nome del sistema operativo.
  •  LOGNAME : il nome di login.
  •  SHELL : il tipo di shell che si sta usando.
Si possono stampare a video tutte queste informazioni grazie al comando echo, ricordandosi di inserire prima della variabile il simbolo $.
  

   
VARIABILI UTENTE
Per convenzione queste sono definite in lettere minuscole. Attenzione che la Shell di Linux è case sensitive, cioè la variabile Pinguino è diversa da pinguino.
Definiamo ora una variabile utente con l'espressione generale:

nome=valore

Ad esempio pin=10 per i numeri. Si possono inserire anche delle variabili contenenti delle stringhe con l'espressione generale:

nome="stringa"
Attenzione a non inserire nessuno spazio in mezzo poiché la bash genera un errore. 
Per stampare il valore della variabile basta dare:

echo $pin

Abbiamo quindi capito che il carattere $ permette di accedere alle variabili.

Nella Bash si può definire anche il valore NULL. Il valore NULL, per i non addetti ai lavori, è un valore speciale che determina una variabile vuota, nulla, appunto.
La Shell di Linux è molto pragmatica in questi casi, ed infatti per dare a una variabile il valore NULL:

nome=

 oppure, per le stringhe:

nome=""
 
 
ARITMETICA DELLA SHELL
Operazioni con numeri
L'aritmetica della shell non è molto diversa dalla normale, semplicemente, quando dobbiamo fare un operazione si usa la key expr precedente l'operazione da calcolare. L'espressione generale è:

expr op1 <operatore> op2
Attenzione che qui tra un operatore e l'altro si deve inserire uno spazio.
Esempi validi di operazioni possono essere:
  • expr 2 + 4
  • expr 2 / 4
  • expr 2 - 4
  • expr 2 % 4
  • expr 2 \* 4
Notate bene che per l'operazione della moltiplicazione il simbolo è \*. Questo perché, per Linux, l'asterisco è un carattere jolly.
Attenzione, la divisione per la Bash è diversa da quella che intendiamo noi, perchè restituisce la Parte Intera. 
Per i non addetti ai lavori l'operatore % è detto operatore resto. In matematica è l'equivalente della funzione Parte Decimale.
 

 

Operazioni con le variabili:
Ovviamente la vera utilità sta nel fare tutte le operazioni elencate sopra, con l'impiego delle variabili. L'unico accorgimento è quello di precedere con il carattere $ il nome della variabile.




Nella prossima puntata approfondiremo l'argomento delle Wild Cards. 
Se non l'hai già fatto leggi la prima puntata.
Invece qui trovi il link alla puntata successiva. =)

Fonti:
- immagini dell'autore;

Nessun commento:

Posta un commento