$ c=$(./getnumbers -n 5)
$ echo $c
1 2 3 4 5
$ ./getnumbers -n 5
1
2
3
4
5
如何让它以列而不是行的形式存储在变量内?
答案1
输出是“作为一列”存储,即保留\n
行之间的内容:
$ c=$(./getnumbers -n 5)
$ echo $c
1 2 3 4 5
$ echo "$c"
1
2
3
4
5
如果没有"
引号,shell 将输出行作为echo
单独的参数传递。echo
然后依次执行其工作并将它们全部输出 - 它们之间只有一个空格。使用"
引号,$c
会传递给 echo,而不由 shell 进行解释,因此 echo 能够正确输出捕获到的值。