golang ExecuteCommand
package utils import ( "bytes" "log" "os/exec" ) func ExecuteCommand(dir, command string, command_args ...string) (string, error) { cmd := exec.Command(command, command_args...) cmd.Dir = dir log.Println("[command]", "[execute]", cmd.Dir, command, command_args) var out bytes.Buffer cmd.Stderr = &out cmd.Stdout = &out err := cmd.Run() if err != nil { log.Println("err:", err, out.String()) } else { log.Println("[command]", "[stdout]", out.String()) } return out.String(), err }