Bash scripting: differenze tra le versioni

m
(sostituito echo con printf, più modifiche minori, ma resta da dividere in più guide)
Riga 30: Riga 30:
echo "$var"    # stampa con a capo finale
echo "$var"    # stampa con a capo finale
</pre>
</pre>
perché $var potrebbe iniziare con il carattere <code>-</code> ed essere una combinazione delle opzioni: -e, -E, -n.
perché $var potrebbe iniziare con il carattere "<code>-</code>" ed essere una combinazione delle opzioni: -e, -E, -n.


Con <code>echo</code> non esiste un modo che assicuri la stampa del contenuto di una variabile in ogni situazione possibile. E non sempre il contenuto è noto a priori: in presenza di espansioni, come vedremo poi, o di input dell'utente. Per non incorrere in errori difficili da riconoscere, <code>echo</code> andrebbe usato soltanto nella shell interattiva, dove l'uso è più comodo, e <code>printf</code> andrebbe preferito anche in Bash per gli script, perché più robusto.
Con <code>echo</code> non esiste un modo che assicuri la stampa del contenuto di una variabile in ogni situazione possibile. E non sempre il contenuto è noto a priori: in presenza di espansioni, come vedremo poi, o di input dell'utente. Per non incorrere in errori difficili da riconoscere, <code>echo</code> andrebbe usato soltanto nella shell interattiva, dove l'uso è più comodo, e <code>printf</code> andrebbe preferito anche in Bash per gli script, perché più robusto.
3 581

contributi