[問題] 同時丟很多程式, 但是要等它跑完....

看板Perl作者 (薑餅)時間14年前 (2011/04/20 19:33), 編輯推噓3(304)
留言7則, 4人參與, 最新討論串1/3 (看更多)
就是呢, 為了要加快速度, 我同時要丟很多個軟體一起跑, 我是用 & 丟到背景來完成的, 但是我程式要等這些軟體跑完, 才能去 parse output, 這樣程式要怎麼寫 ? 舉例來說, 我要執行A軟體三次, 但是輸入檔案不一樣, 如下 : system "A input1 &"; system "A input2 &"; system "A input3 &"; 接著我要讀 output1, output2, output3, 但是如果我這時候寫 : read output1; read output2; read output3; 這時候 output 都還沒有出來, 所以會讀不到檔案, 有沒有什麼辦法 可以讓軟體丟到背景之後等待, 然後等跑完再繼續執行 ? 感謝大家的回覆.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.109.22.142

04/20 20:31, , 1F
exec可以先丟...之後再寫個收檔案的程式
04/20 20:31, 1F

04/20 21:06, , 2F
但我是要程式裡面自動等到有結果之後, 就去 parse 它
04/20 21:06, 2F

04/20 21:06, , 3F
而不是另外再執行程式收檔案.....
04/20 21:06, 3F

04/20 21:53, , 4F
不用另外執行,寫在同一個程式裡就好~~
04/20 21:53, 4F

05/05 00:36, , 5F
fork
05/05 00:36, 5F

05/12 05:22, , 6F

05/12 05:23, , 7F
厄.. 原來這裡是perl版XD
05/12 05:23, 7F
文章代碼(AID): #1DhiHmE8 (Perl)
文章代碼(AID): #1DhiHmE8 (Perl)