0

/home/ にとという名前の 2 つのフォルダーがoneあります。two各フォルダーには (同一の) 実行可能ファイルがありprog.x、begin の実行後、完了するまでに 1 時間かかります。/home/one/prog.x最初に実行してから実行したいと思い/home/two/prog.xます(同時にではありません)。

これを行うスクリプトを作成したいと思います。これを達成する賢い方法はありますか?prog.x同じフォルダにあるデータファイルをロードすることで機能することに注意してください。

4

1 に答える 1

3

あなたのプログラムは (賢明ではありませんが?) 実行中のディレクトリに暗黙的に依存しているため、サブシェルの使用を検討し、;順次コマンドを分離することをお勧めします。

スタイルシェルでは、次のbashようなことができます:

(cd /home/one ; ./prog x) ; (cd /home/two ; ./prog.x)

より一般的な解決策を作成したい場合はfor、リストに対してループを使用できます。

for d in one two ; do cd /home/$d ; ./prog.x ; done  
于 2013-05-10T16:03:58.883 に答える