go 执行系统程序, 无法保持会话,如何处理?
- com 为一个自研的应用程序,当通过com + commnad 参数执行后,会在系统中占用系统2121 端口,启动后占用当前终端。
- 当2121 端口开启后,我需要用net 连上2121 端口并向改终端发送指令
cmd := exec.Command(com, command…)
var stdin, _, stderr bytes.Buffer
cmd.Stdin = &stdin
cmd.Stdout = os.Stdout
cmd.Stderr = &stderr
host, _ := “localhost:2121”
cmd.Run()
NewConnector(host + “:” + port)
1. 运行环境
GO 1.19
2. 问题描述?
cmd.Run() 这行执行完后,程序就退出了,然后我尝试阻塞main 进程,还是不行。 cmd.Run()中的cmd 执行完成后,就自动释放了2121 端口
3. 您期望得到的结果?
希望能找到一个解决方案,能让cmd 保持执行,能让我后续能正常连到2121端口
推荐文章: