如何将多行变量附加到数组

时间:2014-01-17 12:56:40

标签: arrays bash scripting

我在bash脚本中有一个多行变量(包含通过SSH自动执行的命令的输出)。如何将此变量附加到数组中,以便将变量中的每一行放入数组的新行/成员中?

something="first row
           second row
           third row"

echo "${something_array[0]}" - first row
echo "${something_array[1]}" - second row
echo "${something_array[2]}" - third row

“可能”已经是数组中的数据,因此我尝试将这些行附加到数组中。我已经尝试了

IFS='\n' something_array=($(echo -e "$something"))

虽然我遇到了一些问题,但它没有附加数据

1 个答案:

答案 0 :(得分:3)

您想使用ANSI-C Quoting来定义IFS。说:

IFS=$'\n' something_array=($(echo -e "$something"))

代替。

为了附加到数组,请说:

IFS=$'\n' something_array+=($(echo -e "$something"))