実行時に画面にシェルスクリプトコマンドのテキスト出力を取得します。

実行時に画面にシェルスクリプトコマンドのテキスト出力を取得します。

次のシェルスクリプトを考えてみましょう。

val=($ls)

lsはシェルテキスト出力を提供しません。これで、コマンドの実行中に画面に出力テキストをどのように取得できますか?

出力を得るためにval値を印刷できますが、echoを使用することは重要ではありません。したがって、次の行を使用するのは事実ではありません。

echo $val

つまり、コマンドを直接実行したように、現在のコマンドの出力をシェルで同時に実行するにはどうすればよいですか?

ベストアンサー1

次のコマンドを実行すると、シェルが実行しているすべてのコンテンツをエコーできるようになります。

sh -x yourscript

または、スクリプトの最初のコマンドとして追加できます。

set -x

しかし、内容が少し長すぎる可能性があります。デバッグには問題ありませんが、オプションの出力が必要な場合は、echoコマンドを直接慎重に配置することをお勧めします。

おすすめ記事