Exec un comando de shell en Go
Estoy buscando ejecutar un comando de shell en Go y obtener el resultado resultante como una cadena en mi programa. Yo vi elRosetta Code versión
package main
import "fmt"
import "exec"
func main() {
cmd, err := exec.Run("/bin/ls", []string{"/bin/ls"}, []string{}, "", exec.DevNull, exec.PassThrough, exec.PassThrough)
if (err != nil) {
fmt.Println(err)
return
}
cmd.Close()
Pero esto no captura el estándar real o erra de una manera a la que puedo acceder programáticamente; estos todavía se imprimen en el stdout / stderr normal. Vi que usar Pipe como out o err podría ayudar en otro lado, pero no hay ningún ejemplo de cómo hacerlo. ¿Algunas ideas