11.04.2013 Views

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

echo ${Array[@]+’Vuoto’} # Un array <strong>di</strong> ’Vuoto’<br />

echo<br />

echo ’- - Verifica 2 per gli indefiniti - -’<br />

declare -i t<br />

_incT() {<br />

t=$t+1<br />

}<br />

Appen<strong>di</strong>ce A. Script aggiuntivi<br />

# Nota:<br />

# Si tratta della stessa verifica impiegata nel frammento <strong>di</strong> co<strong>di</strong>ce<br />

#+ dell’elencazione <strong>di</strong> un array sparso.<br />

# Referenziazione nulla, t == -1<br />

t=${#VarNulla}-1 # Risultato: meno uno.<br />

${VarNulla+ _incT } # Non viene eseguita.<br />

echo $t’ Referenziazione nulla’<br />

# Contenuto nullo, t == 0<br />

t=${#VarVuota}-1 # Risultato: zero.<br />

${VarVuota+ _incT } # Viene eseguita.<br />

echo $t’ Contenuto nullo’<br />

# Contenuto, t == numero <strong>di</strong> caratteri non-nulli<br />

t=${#VarQualcosa}-1 # numero dei non-nulli meno uno<br />

${VarQualcosa+ _incT } # Viene eseguita.<br />

echo $t’ Contenuto’<br />

# Esercizio: sistemate l’esempio precedente.<br />

unset t<br />

unset _incT<br />

# ${nome?msg_err} ${nome:?msg_err}<br />

# Queste seguono le stesse regole, ma, nel caso sia stata specificata<br />

#+ un’azione dopo il punto interrogativo, terminano lo script dopo l’esecuzione<br />

#+ <strong>di</strong> tale azione.<br />

# L’azione che segue il punto interrogativo può essere una stringa<br />

#+ o il risultato <strong>di</strong> una funzione.<br />

###<br />

# ${nome?} ${nome:?} sono delle semplici verifiche. Il valore <strong>di</strong> ritorno può<br />

#+ essere passato a un costrutto con<strong>di</strong>zionale.<br />

# Operazioni sugli elementi<br />

# -------------------------<br />

echo<br />

echo ’- - Selezione <strong>di</strong> elementi dal fondo - -’<br />

# Stringhe, Array e Parametri posizionali<br />

741

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!