Go exec包:获取Run()执行结果

在使用Go语言的os/exec包执行命令时,我们经常需要获取命令执行后的结果。exec包提供了Output()CombinedOutput()函数来实现这一目的。

Output()函数

Output()函数执行命令并返回标准输出结果。如果命令执行失败,则返回错误信息。

**示例代码:**gopackage main

import ( 'fmt' 'os/exec')

func main() { cmd := exec.Command('ls', '-l') output, err := cmd.Output() if err != nil { fmt.Println(err) return } fmt.Println(string(output))}

CombinedOutput()函数

CombinedOutput()函数执行命令并返回标准输出和标准错误输出结果。如果命令执行失败,则返回错误信息。

**示例代码:**gopackage main

import ( 'fmt' 'os/exec')

func main() { cmd := exec.Command('ls', '-l', 'nonexistentfile') output, err := cmd.CombinedOutput() if err != nil { fmt.Println(err) return } fmt.Println(string(output))}

注意:

  • Output()CombinedOutput()函数会在命令执行完毕后才返回结果。* 如果命令需要花费很长时间才能执行完毕,建议使用Start()Wait()函数来异步执行命令并获取结果。
Go exec包:获取Run()执行结果

原文地址: https://www.cveoy.top/t/topic/fVGW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录