我有一个简单的 Go 应用程序,它偶尔会在后台运行 bash 脚本。
为简单起见,我只是在后台启动了一个网页。
#!/bin/env bash
chrome https://www.google.com
现在可能会发生两件事:
我不希望第二种情况发生!因为在那种情况下,如果我退出应用程序 chrome 也会退出,我不希望那样。
我能否在 Go 中以某种方式启动一个进程(使用 exec.Command
之类的东西)并将其与我的应用程序完全断开连接,以便该进程独立运行(不随我的进程退出,也不会阻止它)?< /p>
答案 0 :(得分:2)
这似乎对我有用:
package main
import "os/exec"
func main() {
exec.Command(`C:\Windows\notepad`).Start()
}
回复评论。关于Wait
,如果你调用Wait
,它本质上
与调用 Run
相同。 Wait
的重点是它允许你把
命令开始和您等待它之间的代码
完全的。与 Run
相比,“开始”和“等待”发生在一个正确的位置
在另一个之后,没有选择在两者之间放置任何东西。或者在这种情况下,
您根本不想要 Wait
的地方。