package exec import ( "errors" "os" "os/exec" ) func RunCommandByShell(cmd string) (string, error) { e := exec.Command("bash", "-c", cmd) out, err := e.CombinedOutput() if errors.Unwrap(err) == exec.ErrNotFound { e = exec.Command("sh", "-c", cmd) out, err = e.CombinedOutput() } return string(out), err } func RunCommandStd(name string, args ...string) { e := exec.Command(name, args...) e.Stdout = os.Stdout e.Stdin = os.Stdin e.Stderr = os.Stderr _ = e.Run() }