Linux環境でシェルコマンドを用いて複数あるディレクトリ内の各実行ファイルを逐次実行したいと考えております。 たとえば、以下のようなものです。

Linux環境でシェルコマンドを用いて複数あるディレクトリ内の各実行ファイルを逐次実行したいと考えております。 たとえば、以下のようなものです。 [前提] メインディレクトリのなかにフォルダが50個ある。各フォルダにはそれぞれ異なる入力ファイルと、それを入力して新たなファイルを出力する実行ファイルtestが入っている。 [手順] ①ディレクトリ1内のtestを実行 ②ディレクトリ2へ移動しtestを実行 ③ディレクトリ3へ移動しtestを実行 以降、50個目のフォルダまでこの作業を繰り返す。 これをバッチファイル等にして繰り返し処理をしたいと考えておりますが、どのようにシェルファイルを書けばよいのでしょうか?? やはり、50個分フォルダのパスをスクリプトに書くしか方法はないのでしょうか。 至急ご回答いただければ嬉しいです。よろしくお願いいたします。 例えば、 for? n=1~50 cd work/taro/メインフォルダ/フォルダn ./test のように繰り返し処理でフォルダ1~50内の各実行ファイルtestを実行させたいです。

Linux系1,854閲覧xmlns="http://www.w3.org/2000/svg">100

ベストアンサー

このベストアンサーは投票で選ばれました

1

for i in */test; do (cd "${i%/*}" && "./${i##*/}"); done */test の * は実行するディレクトリの位置とかで適当に調整

1人がナイス!しています