Skip to content

Instantly share code, notes, and snippets.

@leafsummer
Last active May 17, 2019 13:01
Show Gist options
  • Save leafsummer/4f9eb8fbbc7a8df82dd9839de8d1da2b to your computer and use it in GitHub Desktop.
Save leafsummer/4f9eb8fbbc7a8df82dd9839de8d1da2b to your computer and use it in GitHub Desktop.
[exec the command in shell]
package main
import (
"os/exec"
"runtime"
"strings"
"github.com/axgle/mahonia"
)
func CmdExec(cmd string) (string, error) {
var c *exec.Cmd
var data string
systime := runtime.GOOS
if system == "windows" {
argArray := strings.Split("/c "+cmd, " ")
c = exec.Command("cmd", argArray...)
} else {
c = exec.Command("/bin/sh", "-c", cmd)
}
out, err := c.CombinedOutput()
if err != nil {
return data, err
}
data = string(out)
if system == "windows" {
dec := mahonia.NewDecoder("gbk")
data = dec.ConvertString(data)
}
return data, nil
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment