Índice

Tablas

ksh  

bash  

Los shells recientes permiten trabajar con tablas de una dimensión. Los elementos de una tabla se indexan a partir del número 0.

1. Asignar un elemento

Sintaxis

nombretabla[índice]=valor

Ejemplo

$ tab[0]=10 
$ tab[2]=12

Una casilla de la tabla no inicializada es vacío.

2. Referenciar un elemento

Sintaxis

${nombretabla[índice]}

Ejemplo

Mostrar el elemento de índice 0:

$ echo ${tab[0]} 
10

Mostrar el elemento de índice 2:

$ echo ${tab[2]} 
12

Mostrar el elemento de índice 1. Como nunca ha sido inicializado, la expresión se sustituye por vacío:

$ echo ${tab[1]} 
 
$

Las llaves son obligatorias.

3. Asignación global de una tabla

ksh93  

bash  

Sintaxis

nombretabla=(val1 val2 ... valn)

Ejemplo

$ tab=(10 11 12 13 12)

ksh  

Sintaxis

set -A nombretabla val1 val2 ... valn

Ejemplo

$ set -A tab 10 11 12 13 12

Ambas sintaxis reinicializan completamente la tabla si esta contenía ya valores.

4. Referenciar todos los elementos de una tabla

Sintaxis

${nombretabla[*]}

Ejemplo

$ echo ${tab[*]}  
10 11 12 13 12 
$

5. Obtener el número de elementos de una tabla

Sintaxis

${#nombretabla[*]}

Ejemplo

$ echo ${#tab[*]}   ...