gpt4 book ai didi

go - 如何在 Go 中执行一个程序并返回父进程?

转载 作者:行者123 更新时间:2023-12-01 22:36:36 25 4
gpt4 key购买 nike

关闭。这个问题需要details or clarity .它目前不接受答案。












想改进这个问题?通过 editing this post 添加详细信息并澄清问题.

2年前关闭。




Improve this question




假设我想从程序中执行 Vim,打开 Vim,然后退出 vim 后返回 Go 程序,而不是退出整个进程。我将如何处理?有没有一种方法可以在 Go 中 fork 程序?我在搜索中找不到这个问题的答案。

最佳答案

使用标准 os/exec包裹。这是 documentation 中的一个基本示例:

package main

import (
"bytes"
"fmt"
"log"
"os/exec"
"strings"
)

func main() {
cmd := exec.Command("tr", "a-z", "A-Z")
cmd.Stdin = strings.NewReader("some input")
var out bytes.Buffer
cmd.Stdout = &out
err := cmd.Run()
if err != nil {
log.Fatal(err)
}
fmt.Printf("in all caps: %q\n", out.String())
}

一旦你有 Command , 调用 Run执行它并等待它完成,这听起来像你需要的。

关于go - 如何在 Go 中执行一个程序并返回父进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61164513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com