import (
"os/exec"
"strings"
)
func execCmd(command string) (int, string) {
cmd := exec.Command("/bin/bash", "-c", command)
errout := new(bytes.Buffer) //定义一块内存,用来存放标准错误输出
cmd.Stdout = initlog.Outfile // cmd.Stdout -> log
// cmd.Stderr = initlog.Outfile // cmd.Stderr -> log
cmd.Stderr = errout // 将标准错误输出写到该内存中
//err := cmd.Start()
//initlog.CheckErr("execCmd 2 : ",err)
var cmdExitStatus int
if err := cmd.Run(); err != nil {
if ex, ok := err.(*exec.ExitError); ok {
cmdExitStatus = ex.Sys().(syscall.WaitStatus).ExitStatus()
}
}
erroutTodb := errout.String()
return cmdExitStatus,erroutTodb
}
golang 执行linux命令,返回命令执行码,返回标准错误输出
最新推荐文章于 2023-03-29 20:59:46 发布