Skip to content

Instantly share code, notes, and snippets.

@leninhasda
Last active February 12, 2018 09:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save leninhasda/8f2b5cdc22677a8f2bdf2e896eb0b561 to your computer and use it in GitHub Desktop.
Save leninhasda/8f2b5cdc22677a8f2bdf2e896eb0b561 to your computer and use it in GitHub Desktop.
Handy little go func for executing shell command
func ShellExec(args ...string) (string, string, error) {
cmd := exec.Command(args[0], args[1:]...)
stderr, err := cmd.StderrPipe()
if err != nil {
return "", "", err
}
stdout, err := cmd.StdoutPipe()
if err != nil {
return "", "", err
}
if err := cmd.Start(); err != nil {
return "", "", err
}
errStr, err := ioutil.ReadAll(stderr)
if err != nil {
return "", "", err
}
outStr, err := ioutil.ReadAll(stdout)
if err != nil {
return "", "", err
}
return string(outStr), string(errStr)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment