72 Star 95 Fork 79

openEuler/PilotGo-plugins

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
command.go 815 Bytes
一键复制 编辑 原始数据 按行查看 历史
zhanghan 提交于 2023-06-15 21:15 +08:00 . add prometheus is installed check
package command
import (
"io/ioutil"
"os/exec"
)
func RunCommand(s string) (int, string, string, error) {
cmd := exec.Command("/bin/bash", "-c", "export LANG=en_US.utf8 ; "+s)
StdoutPipe, err := cmd.StdoutPipe()
if err != nil {
return 0, "", "", err
}
StderrPipe, err := cmd.StderrPipe()
if err != nil {
return 0, "", "", err
}
exitCode := 0
err = cmd.Start()
if err != nil {
return 0, "", "", err
}
b1, err := ioutil.ReadAll(StdoutPipe)
if err != nil {
return 0, "", "", err
}
stdout := string(b1)
b2, err := ioutil.ReadAll(StderrPipe)
if err != nil {
return 0, "", "", err
}
stderr := string(b2)
err = cmd.Wait()
if err != nil {
e, ok := err.(*exec.ExitError)
if !ok {
return 0, "", "", err
}
exitCode = e.ExitCode()
}
return exitCode, stdout, stderr, nil
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/openeuler/PilotGo-plugins.git
git@gitee.com:openeuler/PilotGo-plugins.git
openeuler
PilotGo-plugins
PilotGo-plugins
80198980aca1

搜索帮助