複数の.inファイルをパイプし、.outファイルを順番に保存するためのbashシェルスクリプト

複数の.inファイルをパイプし、.outファイルを順番に保存するためのbashシェルスクリプト

Bashシェルからすべてのtest.inファイル(test1.in、test2.in、test3.inからtestN.inまで)を取得し、それを実行可能なtestExecutableにパイプするスクリプトまたはコマンドが必要です。出力結果はそれぞれtestN.outファイルです。です。

これまでは、findを実行してすべてのファイルを入力できることを知っています。 test*.in < テスト実行ファイル

しかし、出力パイプを使用してtest1.inの場合はmytest1.out、test2.inの場合はmytest2.outなどを生成する方法がわかりません。

助けてくれてありがとう。

ベストアンサー1

ループが必要です。

for f in test*.in; do testExecutable <"$f" >"my${f%in}out"; done

上記は、スペースを含む名前を含むすべてのファイル名に対して安全です。

おすすめ記事