Workstation online OnWorks Linux e Windows

Logo

Hosting online gratuito per workstation

<Precedenti | Contenuti | Succ.>

Espansioni per gestire variabili vuote

Diverse espansioni di parametri sono pensate per gestire variabili inesistenti e vuote. Queste espansioni sono utili per gestire parametri posizionali mancanti e assegnare valori predefiniti ai parametri.

${parametro:-parola}

If parametro non è impostato (cioè non esiste) o è vuoto, questa espansione risulta nel valore di parola. Se parametro non è vuoto, l'espansione risulta nel valore di parametro.



[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:-"sostituisci il valore se non impostato"}

sostituisci il valore se non impostato [me@linuxbox ~]$ echo $foo


[io@linuxbox~]$ foo=bar

[io@linuxbox~]$ echo ${foo:-"sostituisci il valore se non impostato"}

bar

[io@linuxbox~]$ echo $foo

bar

[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:-"sostituisci il valore se non impostato"}

sostituisci il valore se non impostato [me@linuxbox ~]$ echo $foo


[io@linuxbox~]$ foo=bar

[io@linuxbox~]$ echo ${foo:-"sostituisci il valore se non impostato"}

bar

[io@linuxbox~]$ echo $foo

bar


${parametro:=parola}

If parametro non è impostato o è vuoto, questa espansione risulta nel valore di parolaInoltre, il valore di parola è assegnato a parametro. Se parametro non è vuoto, l'espansione risulta nel valore di parametro.


[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:="valore predefinito se non impostato"}

valore predefinito se non impostato [me@linuxbox ~]$ echo $foo valore predefinito se non impostato [me@linuxbox ~]$ foo=bar

[io@linuxbox~]$ echo ${foo:="valore predefinito se non impostato"}

bar

[io@linuxbox~]$ echo $foo

bar

[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:="valore predefinito se non impostato"}

valore predefinito se non impostato [me@linuxbox ~]$ echo $foo valore predefinito se non impostato [me@linuxbox ~]$ foo=bar

[io@linuxbox~]$ echo ${foo:="valore predefinito se non impostato"}

bar

[io@linuxbox~]$ echo $foo

bar


Immagine

Nota: i parametri posizionali e altri parametri speciali non possono essere assegnati in questo modo.


Immagine


${parametro:?parola}

If parametro non è impostato o è vuoto, questa espansione provoca l'uscita dello script con un errore e il contenuto di parola vengono inviati all'errore standard. Se parametro non è vuoto, l'espansione risulta nel valore di parametro.



[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:?"il parametro è vuoto"}

bash: foo: il parametro è vuoto [me@linuxbox ~]$ eco $?

1

[io@linuxbox~]$ foo=bar

[io@linuxbox~]$ echo ${foo:?"il parametro è vuoto"}

bar

[io@linuxbox~]$ eco $?

0

[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:?"il parametro è vuoto"}

bash: foo: il parametro è vuoto [me@linuxbox ~]$ eco $?

1

[io@linuxbox~]$ foo=bar

[io@linuxbox~]$ echo ${foo:?"il parametro è vuoto"}

bar

[io@linuxbox~]$ eco $?

0


${parametro:+parola}

If parametro non è impostato o è vuoto, l'espansione non produce nulla. Se parametro non è vuoto, il valore di parola è sostituito parametro; tuttavia, il valore di parametro non è cambiato.



[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:+"sostituisci il valore se impostato"}


[io@linuxbox~]$ foo=bar

[io@linuxbox~]$ echo ${foo:+"sostituisci il valore se impostato"}

[io@linuxbox~]$ pippo=

[io@linuxbox~]$ echo ${foo:+"sostituisci il valore se impostato"}


[io@linuxbox~]$ foo=bar

[io@linuxbox~]$ echo ${foo:+"sostituisci il valore se impostato"}


valore sostitutivo se impostato

valore sostitutivo se impostato


Il miglior sistema operativo cloud computing su OnWorks: