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.

array2[${#array2[*]}]="nuovo2"<br />

ElencaArray<br />

Capitolo 26. Array<br />

# Quando sono mo<strong>di</strong>ficati in questo modo, gli array sono come degli ’stack’<br />

# L’operazione precedente rappresenta un ’push’<br />

# L”altezza’ dello stack è:<br />

altezza=${#array2[@]}<br />

echo<br />

echo "Altezza dello stack array2 = $altezza"<br />

# Il ’pop’ è:<br />

unset array2[${#array2[@]}-1] # Gli array hanno in<strong>di</strong>ci in base zero<br />

altezza=${#array2[@]} #+ vale a <strong>di</strong>re che il primo elemento ha in<strong>di</strong>ce 0<br />

echo<br />

echo "POP"<br />

echo "Nuova altezza dello stack array2 = $altezza"<br />

ElencaArray<br />

# Elenca solo gli elemnti 2do e 3zo dell’array0<br />

da=1 # Numerazione in base zero<br />

a=2 #<br />

array3=( ${array0[@]:1:2} )<br />

echo<br />

echo "Elementi dell’array3: ${array3[@]}"<br />

# Funziona come una stringa (array <strong>di</strong> caratteri)<br />

# Provate qualche altro tipo <strong>di</strong> "stringa"<br />

# Sostituzione:<br />

array4=( ${array0[@]/secondo/2do} )<br />

echo<br />

echo "Elementi dell’array4: ${array4[@]}"<br />

# Sostituzione <strong>di</strong> ogni occorrenza della stringa con il carattere jolly<br />

array5=( ${array0[@]//nuovo?/vecchio} )<br />

echo<br />

echo "Elementi dell’array5: ${array5[@]}"<br />

# Proprio quando stavate per prenderci la mano . . .<br />

array6=( ${array0[@]#*nuovo} )<br />

echo # Questo potrebbe sorprendervi.<br />

echo "Elementi dell’array6: ${array6[@]}"<br />

array7=( ${array0[@]#nuovo1} )<br />

echo # Dopo l’array6 questo non dovrebbe più stupirvi.<br />

echo "Elementi dell’array7: ${array7[@]}"<br />

# Che assomiglia moltissimo a . . .<br />

array8=( ${array0[@]/nuovo1/} )<br />

echo<br />

echo "Elementi dell’array8: ${array8[@]}"<br />

481

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

Saved successfully!

Ooh no, something went wrong!