2009-12-04 43 views

回答

8

一個小小的研究帶來了:

返回值是 由等待 調用返回程序的退出狀態。要獲得實際的出價值, 八右移(見下文)。請參閱 也是「exec」。這不是您想要 用來捕獲 命令的輸出,因爲您應該只使用 反向引用或qx //,如在perlop中的「STRING」中的 所述。返回值-1 表示無法啓動 程序或等待(2) 系統調用的錯誤(檢查$!爲 原因)。

wait文檔說:

行爲就像等待(2)您的系統上的系統調用 :等待一個孩子 進程終止,並返回死者 PID過程中,或-1,如果 沒有子進程。 狀態在$?中返回和 $ {^} CHILD_ERROR_NATIVE。需要注意的是-1 返回值可能意味着 子進程正在 自動收穫,如 perlipc描述。


來源:這是從perldoc拍攝。這是Perl中的tutorial on system

+0

@eliben,請您提供一些更多信息或一些鏈接來詳細說明 – 2009-12-04 06:37:10

+0

@Sachin:鏈接到源文件 – 2009-12-04 06:46:18

+3

C'system()'的文檔說得完全一樣 - 它返回 - 1不能分叉,而wait()的結果是否定的。 – hobbs 2009-12-04 07:38:47

相關問題