3 581
contributi
m (→Assegnazione dallo standard input: correzione) |
m (→Assegnazione dallo standard input: chiarimento) |
||
Riga 65: | Riga 65: | ||
Il nome delle variabili non va preceduto da '''$''', proprio come nelle assegnazioni normali. Se sono presenti più nomi di variabile, la riga letta si divide in stringhe delimitate dai caratteri contenuti in <code>$IFS</code> (di default sono tre: spazio, tabulazione e invio), ma all'ultima variabile viene sempre assegnato tutto il contenuto rimanente fino a fine riga. | Il nome delle variabili non va preceduto da '''$''', proprio come nelle assegnazioni normali. Se sono presenti più nomi di variabile, la riga letta si divide in stringhe delimitate dai caratteri contenuti in <code>$IFS</code> (di default sono tre: spazio, tabulazione e invio), ma all'ultima variabile viene sempre assegnato tutto il contenuto rimanente fino a fine riga. | ||
Il carattere <code>\</code> è speciale e può essere utilizzato per inserire in una variabile un carattere contenuto in <code>$IFS</code> e/o più righe. Per inserirlo è una volta è quindi necessario digitare <code>\\</code>, in alternativa con l'opzione <code>-r</code> si può | Il carattere <code>\</code> è speciale e può essere utilizzato per inserire in una variabile un carattere contenuto in <code>$IFS</code> e/o andare su più righe (gli "a capo" saranno rimossi però dalla variabile). Per inserirlo è una volta è quindi necessario digitare <code>\\</code>, in alternativa con l'opzione <code>-r</code> si può trattare normalmente. | ||
Esempio: | Esempio: | ||
Riga 72: | Riga 72: | ||
read -r testo | read -r testo | ||
printf %s\\n "Hai scritto: ${testo}" | printf %s\\n "Hai scritto: ${testo}" | ||
</pre> | |||
Per permettere tramite <code>\</code> di scrivere più righe, basta rimuovere l'opzione <code>-r</code>: | |||
<pre> | |||
printf %s "Scrivi qualcosa (se vuoi andare a capo, premi prima "\"; mentre per scrivere "\" nel testo scrivi "\\") e premi invio: " | |||
read testo | |||
printf %s\\n "Hai scritto: ${testo}" # NOTA: tutto su una riga! | |||
</pre> | </pre> | ||
contributi