func main() { msg, err := ExecAsRes("ls -al|grep test") fmt.Println(msg, err) } // ExecAsRes 执行shell指令,有返回值 func ExecAsRes(cmd string) (msg string, err error) { param := append([]string{"-c"}, cmd) command := exec.Command("bash", param...) out, err := command.CombinedOutput() if err != nil { fmt.Println(err) return "", err } return string(out), err } // ExecNoRes 执行shell指令,无返回值 func ExecNoRes(command string) error { in := bytes.NewBuffer(nil) cmd := exec.Command("sh") cmd.Stdin = in in.WriteString(command) if err := cmd.Run(); err != nil { return err } return nil }