【发布时间】:2016-01-05 00:49:12
【问题描述】:
假设数组 ar1 和 ar2 我希望这两个数组都打印在两列中。
printf "%s\t%s\n" "${ar1[@]}" "${ar2[@]}"
有什么想法吗?
【问题讨论】:
假设数组 ar1 和 ar2 我希望这两个数组都打印在两列中。
printf "%s\t%s\n" "${ar1[@]}" "${ar2[@]}"
有什么想法吗?
【问题讨论】:
假设数组元素不包含换行符,paste 可以完成这项工作:
ar1=(1 2 3 4 5 6)
ar2=(a b c d e f)
paste <(printf "%s\n" "${ar1[@]}") <(printf "%s\n" "${ar2[@]}")
1 a
2 b
3 c
4 d
5 e
6 f
否则为纯 BASH 循环:
for ((i=0; i< "${#ar1[@]}"; i++)) do printf "%s\t%s\n" "${ar1[$i]}" "${ar2[$i]}"; done
1 a
2 b
3 c
4 d
5 e
6 f
【讨论】: