Uso di array semplici in bash

Con Bash per dichiarare esplicitamente un array bisogna utilizzare

declare -A mioarray

Per avere il valore dell'elemento 5 basta scrivere

echo $[mioarray[5]

mentre per cambiare il valore  bisogna scrivere

mioarray[5]='nuovo valore'

${mioarray[*]} o ${mioarray[@]} viene espanso da tutti i valori dell'array mentre $[#mionome[@]} viene espanso con la lunghezza dell'array

Cosa possiamo fare con gli array? Ad esempio memorizzare l'output di un comando di cui ogni riga vorremmo che vada su un elemento differente.

IFS=$'\n' mioarray=($(ls -alh))

A questo punto possiamo stampare l'output come

 IFS=$'\n' echo "${mioarray[*]}"

Attenzione: i doppi apici sono importanti per non avere l'output su un'unica riga.

Facendo così potremmo fare diversi test sullo stesso output catturato una sola volta.