$ 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
引用符がない場合、"
シェルは出力行をecho
別の引数として渡します。echo
その後、タスクを実行し、それらの間にスペースを1つだけ置き、すべてを出力します。"
引用符を使用すると、$c
シェルから解釈されずにechoに渡されるため、echoはキャプチャされた値を正しく出力できます。