Bash scripting - Lordhack.altervista.org - Altervista
Bash scripting - Lordhack.altervista.org - Altervista
Bash scripting - Lordhack.altervista.org - Altervista
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
nomefile.<br />
Il programma in ogni caso non ha modo di acc<strong>org</strong>ersi che il suo stdout o stdin è stato cambiato.<br />
Ora se qualcuno di voi ha provato a mandare il terminale di DOOM3 su un file mi chiederà<br />
"Perchè doom3 si blocca se reindirizzo il suo stdout? Come fa ad acc<strong>org</strong>ersene?"<br />
Semplice, il problema lo fa la shell... non Doom3<br />
Ricapitolando:<br />
Codice:<br />
if<br />
> file # invia lo stdout del prog a file<br />
< file # invia file come stdin del prog<br />
Data la complessità dell'if dello shell script è giusto dedicargli un paragrafo intero.<br />
IF è ls struttura di controllo più amata da tutti i programmatori. In shell script il suo funzionamento di<br />
base è molto semplice<br />
Codice:<br />
#Sintassi dell'if<br />
if condizione ; then<br />
codice<br />
elif codice<br />
fi<br />
Per "codice" si intende una serie di istruzioni shell script.<br />
if esegue le istruzioni contenute tra then e elif/fi se condizione ritorna 0. Condizione è un comanda<br />
shell che viene eseguito in un terminale a parte se il codice di errore di questo è 0 (nessun errore)<br />
allora if esegue le istruzioni. Se il codice di errore è diverso da 0 if salta al prossimo elif o esce se<br />
incontra un fi.<br />
elif è un abbreviazione di else if e permette di eseguire un altro controllo. elif non ha bisogno di essere<br />
chiuso esso viene infatti chiuso dal fi dell'if principale o da un altro elif.<br />
fi termina l' if (come "}" del c o endif del basic.)<br />
Da questo facciamo un esempio per farvi capire meglio.<br />
Codice: