Bash scripting: differenze tra le versioni

m
nessun oggetto della modifica
mNessun oggetto della modifica
Riga 160: Riga 160:
Alcuni caratteri hanno un valore speciale per la shell, per consentirne le espansioni (di variabile, parametro, comando, percorso, ecc...). Di conseguenza se si intende scrivere un carattere speciale senza espanderlo, è necessario comunicarlo alla shell facendolo precedere da un carattere di escape '<code>\</code>' oppure racchiudendolo tra apici o virgolette (a seconda dell'espansione da disattivare).
Alcuni caratteri hanno un valore speciale per la shell, per consentirne le espansioni (di variabile, parametro, comando, percorso, ecc...). Di conseguenza se si intende scrivere un carattere speciale senza espanderlo, è necessario comunicarlo alla shell facendolo precedere da un carattere di escape '<code>\</code>' oppure racchiudendolo tra apici o virgolette (a seconda dell'espansione da disattivare).


Una stringa non racchiusa tra apici o tra virgolette ha i seguenti caratteri speciali: <code>'</code>, <code>"</code>, <code>`</code>, <code>$</code>, <code>\</code>, <code>{</code>, <code>}</code>, <code>[</code>, <code>]</code>, <code>*</code>, <code>?</code>, <code>~</code> e <code>#</code>. Se non preceduti dal carattere di escape <code>\</code> possono in base ai caratteri immediatamente successivi essere espansi, o tralasciati come commenti nel caso di <code>#</code>. Questa sezione non è esaustiva e non considera tutte le eccezioni, ma consiglia degli accorgimenti che si possono sempre seguire per ridurre la necessità dell'escape.
Una stringa non racchiusa tra apici o tra virgolette ha i seguenti caratteri speciali: <code>'</code>, <code>"</code>, <code>`</code>, <code>$</code>, <code>\</code>, <code>{</code>, <code>}</code>, <code>[</code>, <code>]</code>, <code>*</code>, <code>?</code>, <code>~</code>, <code>(</code>, <code>)</code>, <code>;</code> e <code>#</code>. Se non preceduti dal carattere di escape <code>\</code> possono in base ai caratteri immediatamente successivi essere espansi, considerati parte di un nuovo comando o tralasciati come commenti. Questa sezione non è esaustiva e non considera tutte le eccezioni, ma consiglia degli accorgimenti che si possono sempre seguire per ridurre la necessità dell'escape.


Inoltre gli spazi (comprendendo tabulazioni e a capo) non quotati (con apici o virgolette) e non preceduti dal carattere di escape <code>\</code> vengono compressi:
Inoltre gli spazi (comprendendo tabulazioni e a capo) non quotati (con apici o virgolette) e non preceduti dal carattere di escape <code>\</code> vengono compressi:
Riga 518: Riga 518:
|Verificata_da=
|Verificata_da=
:[[Utente:S3v|S3v]] (versione in Bash tips)
:[[Utente:S3v|S3v]] (versione in Bash tips)
:[[Utente:HAL 9000|HAL 9000]] 16:24, 6 lug 2014 (CEST)
:[[Utente:HAL 9000|HAL 9000]] 16:35, 6 lug 2014 (CEST)
|Estesa_da=
|Estesa_da=
:[[Utente:S3v|S3v]] (versione in Bash tips)
:[[Utente:S3v|S3v]] (versione in Bash tips)
3 581

contributi