我想寫一個控制檯應用程序使用「去」將控制轉移到另一個控制檯應用程序。如何從「轉到」另一個控制檯應用程序中編寫的控制檯應用程序轉移?
步驟如下:
- 運行的二進制程序這驗證,並在必要
- 二進制應用構建與選項的命令串
- 二進制應用程序啓動過程B和退出安裝幾件事情(一node.js應用程序在我的情況下)
- 進程B運行完成並將輸出發送到同一控制檯。
我需要的唯一步驟是啓動一個新進程並退出的能力,所以這是這裏的問題。
我想寫一個控制檯應用程序使用「去」將控制轉移到另一個控制檯應用程序。如何從「轉到」另一個控制檯應用程序中編寫的控制檯應用程序轉移?
步驟如下:
我需要的唯一步驟是啓動一個新進程並退出的能力,所以這是這裏的問題。
請參閱Golang fork process。總之,直接做這件事存在問題。您應該使用非Go程序來啓動您的node.js應用程序。
os package看起來像它有你可能需要的功能。 啓動進程的函數StartProcess和函數(* Process)kill退出它。
os/exec
可能會有所幫助:
包EXEC運行外部命令。它包裝了os.StartProcess,以便重新映射stdin和stdout,使用管道連接I/O並進行其他調整。