Bashスクリプト:acプログラムの出力を行ではなく列として変数に格納する方法

Bashスクリプト:acプログラムの出力を行ではなく列として変数に格納する方法
$ 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はキャプチャされた値を正しく出力できます。

おすすめ記事