OSはCentOS Linux release 7.3.1611です。
失礼な表現等ございましたら、申し訳ございません。
また、説明がわかりにくい所など御座いましたらお申し付けください。
以下の様な構造の各フォルダの中に"test.c"があり、c言語で書かれたソースファイルが各フォルダに入っており、それぞれをコンパイルし、それぞれ実行し、それぞれのフォルダに結果を格納しようと思っています。
以前は、screenというコマンドを用いて、フォルダの数だけ仮想端末を作成し、それぞれの仮想端末に、コマンドを飛ばして実行していました。
しかし、私事のため、screenコマンドを使うことができなくなりました。
ですので、もしよろしければ何か解決策等ございましたら、教えていただけないでしょうか。
よろしくお願いいたします。
├── a350 │ ├── b100 │ │ └── test.c │ └── b110 │ └── test.c ├── a400 │ ├── b100 │ │ └── test.c │ └── b110 │ └── test.c ├── a425 │ ├── b100 │ │ └── test.c │ └── b110 │ └── test.c ├── a475 │ ├── b100 │ │ └── test.c │ └── b110 │ └── test.c └── a500 ├── b100 │ └── test.c └── b110 └── test.c
findを用いれば良いと、dodox86さんからアドバイスをいただきましたので、a350a500と同じディレクトリにdo_process.shを配置し、a350a500と同じディレクトリで以下の様に試したところ、**
sh
1find ./ -type f -name "test.c" -exec ./do_process.sh {} \;
find: ./do_process.sh :No such file or directory
とエラーが出てしまいました。対策として、各フォルダにもdo_process.shを配置してみましたが結果は同じでした。どのディレクトリにdo_process.shを配置すればよろしいでしょうか。
自己解決いたしました。シバングを環境に合わせてあげる必要があるようでしたので、変更したところ無事動きました。続いて、頂いたシェルスクリプトをコンパイルして実行する様に変更したいと思います。
追記
方法はわかったのですが、肝心のc言語で書かれたソースコードをコンパイルするシェルスクリプトを、頂いたシェルスクリプトを元に自作してみましたが、なかなかうまくいきませんでした。こちらで質問しようかと思いましたが、こちらでは方法そのものを聞いているので、質問の趣旨から外れている気がするので一旦、ベストアンサーを選び質問を閉じさせていただきます。回答してくださった皆様、どうもありがとうございました。
回答1件
あなたの回答
tips
プレビュー