在 Go 中执行外部命令
为了执行 Go 程序外部的命令,exec 包提供了一个强大的机制。此包允许您启动一个进程并停止其执行直到完成。
命令调用
Command 函数初始化外部命令执行。要使用参数“some”和“args”启动名为“yourcommand”的命令,请使用以下语法:
cmd := exec.Command("yourcommand", "some", "args")
阻止执行
设置后该命令,您可以通过调用 Run() 来启动其执行。此方法会阻塞当前线程,直到外部命令完成运行:
if err := cmd.Run(); err != nil { fmt.Println("Error: ", err) }
如果执行命令时发生错误,err 变量将包含详细信息。
检索输出
或者,如果您只需要命令的输出,则可以使用 Output() 函数而不是 Run()。 Output() 收集命令的标准输出并将其存储在字节片中:
output, err := cmd.Output() if err != nil { fmt.Println("Error: ", err) } fmt.Println(string(output))
以上是Go中如何执行外部命令?的详细内容。更多信息请关注PHP中文网其他相关文章!