Estoy tratando de convertir la salida de un comando como echo -e "a b\nc\nd e"
en una matriz.¿Cómo convertir la salida del comando a una matriz línea por línea en bash?
X=($(echo -e "a b\nc\nd e"))
Divide la entrada para cada nueva línea y el carácter de espacio en blanco:
$ echo ${#X[@]}
> 5
for i in ${X[@]} ; do echo $i ; done
a
b
c
d
e
El resultado debe ser:
for i in ${X[@]} ; do echo $i ; done
a b
c
d e
posible duplicado de [¿Cómo se crea una matriz en la fiesta de una magnitud de guía?] (Http://stackoverflow.com/questions/8750848/how-do-i-create-an-array-in -bash-from-a-command-variable) – Cascabel
Alguien podría encontrar un duplicado mejor; esa es solo la más reciente. Esta pregunta probablemente se haya formulado docenas de veces. – Cascabel