出力を分割せずにスクリプト出力をlsなどのコマンドにどのように渡すことができますか?

出力を分割せずにスクリプト出力をlsなどのコマンドにどのように渡すことができますか?

次のスクリプトがあるとしましょう。

#!/bin/bash
printf '%q\n' "b c"

スクリプト印刷の実行:

b\ c

コマンドラインから。

次に、名前付きファイルを含むディレクトリからb cスクリプトの出力を次のコマンドにパイプしたいと思いますls

$ ls $(./myscript)

ここでの問題はsum、つまり2つのパラメータb cに分割されており、もちろんそのパラメータが見つからないことです。この問題を回避する方法はありますか?出力から空間を脱出するだけで十分だと思います。b\cls

ベストアンサー1

引用符を使用する:

$ ls "$(./myscript)"

おすすめ記事