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.

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

# Gli elementi <strong>di</strong> un Array-<strong>Bash</strong> possono essere definiti, ma vuoti<br />

# (contenuto nullo).<br />

###<br />

# Gli elementi <strong>di</strong> un Array-<strong>Bash</strong> possono essere:<br />

# * Un intero <strong>di</strong> 32-bit (o maggiore) del tipo signed<br />

# * Una stringa<br />

# * Una stringa contenente spazi tanto da assomigliare al nome <strong>di</strong> una<br />

# + funzione seguita dai suoi argomenti<br />

###<br />

# Elementi <strong>di</strong> un Array-<strong>Bash</strong> precedentemente definiti<br />

# + possono essere successivamente annullati (unset).<br />

# Questo significa che un Array-<strong>Bash</strong> ad in<strong>di</strong>cizzazione raggruppata può<br />

# + essere trasformato in uno ad in<strong>di</strong>cizzazione sparsa.<br />

###<br />

# Si possono aggiungere degli elementi ad un Array-<strong>Bash</strong> semplicemente<br />

#+ definendo un elemento che non era stato definito precedentemente.<br />

###<br />

# Per queste ragioni si è usato il termine "Array-<strong>Bash</strong>".<br />

# Da questo punto in avanti verrà riutilizzato il termine generico "array".<br />

# -- msz<br />

# Tempo <strong>di</strong> <strong>di</strong>mostrazioni -- inizializziamo l’array Array, precedentemente<br />

#+ <strong>di</strong>chiarato, come array ad in<strong>di</strong>cizzazione sparsa.<br />

# (Il comando ’unset ... ’ viene qui usato a solo scopo <strong>di</strong>mostrativo.)<br />

unset Array[0] # Per l’elemento specificato<br />

Array[1]=uno # Stringa letterale senza quoting<br />

Array[2]=” # Definito, ma vuoto<br />

unset Array[3] # Per l’elemento specificato<br />

Array[4]=’quattro’ # Stringa letterale con quoting<br />

# Leggete la stringa <strong>di</strong> formato %q come: Quoting-Conforme-Alle-Regole-IFS.<br />

echo<br />

echo ’- - Al <strong>di</strong> fuori dei doppi apici - -’<br />

###<br />

printf %q ${Array[*]} # Referimento Globale Tutti-Gli-Elementi-Di<br />

echo<br />

echo ’comando echo:’${Array[*]}<br />

###<br />

printf %q ${Array[@]} # Tutti-Gli-Elementi-Di<br />

echo<br />

echo ’comando echo:’${Array[@]}<br />

# L’uso dei doppi apici potrebbe essere letto come: Abilita-Sostituzione.<br />

# Si possono riconoscere cinque casi <strong>di</strong> impostazione <strong>di</strong> IFS.<br />

echo<br />

731

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

Saved successfully!

Ooh no, something went wrong!