3
任何人都可以請指教,如何在BASH unix shell中使用新進程組ID來產生Linux上的新進程? 非常感謝!如何在BASH中使用新進程組ID在Linux上產生進程
任何人都可以請指教,如何在BASH unix shell中使用新進程組ID來產生Linux上的新進程? 非常感謝!如何在BASH中使用新進程組ID在Linux上產生進程
從命令提示即交互運行的命令,例如「emacs的xxx.txt」,在一個新的處理組,:
setsid emacs xxx.txt &
如在連接「linux命令setsid」所描述的, setsid命令的行爲可能會令人驚訝(並且在我剛剛使用的linux中,該手冊頁根本沒有幫助)。所以......
如果你想從一個劇本內生成一個命令並有命令繼續腳本退出後,雙setsid:
setsid setsid emacs xxx.txt
...的理由是:
當bash調用腳本期間setsid,setsid保持的bash的解釋器過程的進程組ID等:
setsid emacs xxx.txt
... blocks(請參閱鏈接的文章)。但它確實樹立了新的進程組運行的emacs
你可以用 '&' 的背景前:
setsid emacs的xxx.txt &
...但還有一個競爭條件在後臺進程獲取到setsid改變進程組(這可能會殺子過程)
即設定,當我們序列一倍setsid是:
從腳本內,如果你想與指揮通信,並等待它退出,請參閱bash manpage中的子進程。
的可能重複的[Linux命令setsid](http://stackoverflow.com/questions/9677306/linux-command-setsid) –