¿Es posible cat elementos de una matriz que son archivos de texto pasados como entrada? Tengo algo como esto:
array=("$@")
cat array[3]
Donde primero puse todos mis argumentos (algunos archivos.txt) en una matriz para manejarlos más tarde y luego, por ejemplo, me gustaría imprimir el cuerpo del tercer archivo (sé que podría usarlo fácilmente cat $3
).
Respuesta1
La sintaxis para acceder a un elemento particular de una matriz es
${var[index]}
donde index
es una expresión que se evalúa como un número entero entre cero y la longitud de la matriz, menos 1 (los índices de la matriz bash
están basados en cero).
Para obtener $3
de su matriz, use ${array[2]}
, es decir
cat <"${array[2]}"
Ver también
Usarías array[3]
en una tarea:
array[3]=something
Esto asignaría la cadena something
al cuarto elemento de la matriz.
También relacionado con el hecho de que bash
las matrices comienzan en cero: