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 ’ - conteggio dei non-nulli: ’${#sparsoZ[@]}’ elementi’<br />

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

echo<br />

echo ’- - Rimozione <strong>di</strong> elementi iniziali - -’<br />

echo ’- - La verifica del Modello-Globale deve includere il primo carattere.- -’<br />

echo "- - Il Modello-Globale può essere una stringa letterale \<br />

o il risultato <strong>di</strong> una funzione. - -"<br />

echo<br />

# Funzione che restituisce un semplice, letterale, Modello-Globale<br />

_abc() {<br />

echo -n ’abc’<br />

}<br />

echo ’- Occorrenza più breve -’<br />

echo ${stringaZ#123} # Inalterata (nessuna corrispondenza).<br />

echo ${stringaZ#$(_abc)} # ABC123ABCabc<br />

echo ${arrayZ[@]#abc} # Applicato ad ogni elemento.<br />

# Verrà corretto da Chet Ramey in una prossima versione <strong>di</strong> <strong>Bash</strong>.<br />

# echo ${sparsoZ[@]#abc} # La versione-2.05b scarica i registri.<br />

# Il -sarebbe bello- Primo-In<strong>di</strong>ce-Di<br />

# echo ${#sparsoZ[@]#*} # Notazione NON valida per <strong>Bash</strong>.<br />

echo<br />

echo ’- Occorrenza più lunga -’<br />

echo ${stringaZ##1*3} # Inalterata (nessuna corrispondenza)<br />

echo ${stringaZ##a*C} # abc<br />

echo ${arrayZ[@]##a*c} # ABCABC 123123 ABCABC<br />

# Verrà corretto da Chet Ramey in una prossima versione <strong>di</strong> <strong>Bash</strong>.<br />

# echo ${sparsoZ[@]##a*c} # La versione-2.05b scarica i registri.<br />

echo<br />

echo ’- - Rimozione <strong>di</strong> elementi finali. - -’<br />

echo "- - Il Modello-Globale deve includere l’ultimo carattere. - -"<br />

echo "- - Il Modello-Globale può essere una stringa letterale \<br />

o il risultato <strong>di</strong> una funzione. - -"<br />

echo<br />

echo ’- Corrispondenza più breve -’<br />

echo ${stringaZ%1*3} # Inalterata (nessuna corrispondenza).<br />

echo ${stringaZ%$(_abc)} # abcABC123ABC<br />

echo ${arrayZ[@]%abc} # Applicato ad ogni elemento.<br />

# Verrà corretto da Chet Ramey in una prossima versione <strong>di</strong> <strong>Bash</strong>.<br />

# echo ${sparsoZ[@]%abc} # La versione-2.05b scarica i registri.<br />

# Lo -sarebbe bello- Ultimo-In<strong>di</strong>ce-Di<br />

# echo ${#sparsoZ[@]%*} # Notazione NON valida per <strong>Bash</strong>.<br />

echo<br />

743

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

Saved successfully!

Ooh no, something went wrong!