Bash数组内容以列打印

时间:2013-11-07 07:30:32

标签: bash

$declare -a inputs=("(1 3 4 8 6 2 7 0 5)" "(2 8 1 0 4 3 7 6 5)"

$ for i in ${inputs[@]}; do echo $i; done;

给出

(1
3
4
8
6
2
7
0
5)
(2
8
1
0
4
3
7
6
5)

我希望每个阵列都连续。

2 个答案:

答案 0 :(得分:2)

使用引号:

for i in "${inputs[@]}"; do echo "$i"; done;
(1 3 4 8 6 2 7 0 5)
(2 8 1 0 4 3 7 6 5)

答案 1 :(得分:1)

您需要使用引号。说:

for i in "${inputs[@]}"; do echo $i; done

这将返回:

(1 3 4 8 6 2 7 0 5)
(2 8 1 0 4 3 7 6 5)

此外,请删除;之后的done,除非它是您脚本中的最后一行!