如何从“go”中编写的控制台应用程序转移到另一个控制台应用程序?

时间:2012-11-21 22:15:28

标签: go console-application

我想使用“go”编写一个控制台应用程序,它将控制转移到另一个控制台应用程序。

以下是步骤:

  1. 运行二进制应用程序,如有必要,验证并安装一些内容
  2. 二进制应用程序使用选项构建命令字符串
  3. 二进制应用程序启动进程B并退出(在我的情况下是一个node.js应用程序)
  4. 进程B运行完成并将输出发送到同一控制台。
  5. 我需要的唯一步骤是能够启动新流程并退出,这就是问题所在。

3 个答案:

答案 0 :(得分:1)

os package看起来具有您可能需要的功能。 用于启动进程的函数StartProcess和函数(* Process)Kill退出它。

答案 1 :(得分:1)

os/exec可能会有所帮助:

  

包exec运行外部命令。它包装了os.StartProcess,以便更容易地重新映射stdin和stdout,使用管道连接I / O,并进行其他调整。

查看Cmd.Start example

答案 2 :(得分:1)

Golang fork process。简而言之,直接这样做存在问题。您应该使用非Go程序来启动node.js应用程序。