Arrays 为每个bash数组项插入新行
我正在创建一个bash数组:Arrays 为每个bash数组项插入新行,arrays,bash,Arrays,Bash,我正在创建一个bash数组: for i in *.txt; do arr2+=$(printf "%s\n" "${arr[@]: 0: 1} $arr[@]: 1: 1}") done echo "${arr2}" 输出都在同一行上(当我使用awk获取第一列时,只返回第一个元素) 如何让for循环的每次迭代将每个新条目放入换行数组中?如下所述: 小心删除尾随新行的$()! 保留新行的方法:使用“” 因此,您的命令必须更新,例如: for i in *.txt; do
for i in *.txt; do
arr2+=$(printf "%s\n" "${arr[@]: 0: 1} $arr[@]: 1: 1}")
done
echo "${arr2}"
输出都在同一行上(当我使用awk获取第一列时,只返回第一个元素)
如何让for循环的每次迭代将每个新条目放入换行数组中?如下所述:
小心删除尾随新行的$()
!
保留新行的方法:使用“
”
因此,您的命令必须更新,例如:
for i in *.txt; do
tmp=$(printf "$i")
arr2+="$tmp\n" # <--- here we preserve the new line!
done
echo -e "${arr2}" # option '-e' allow interpretation of the '\n'
用于*.txt中的i;做
tmp=$(printf“$i”)
arr2+=“$tmp\n”#