I want to use Go and the exec library to go to a certain path, "c:", and run a .exe file.
When I run my Go code, it gives me:
exec: "cd:/": file does not exist
The cd command is a builtin of your shell, whether bash, cmd.exe, PowerShell, or otherwise. You would not exec a cd command and then exec the program you want to run. Instead, you want to set the Dir of the Cmd you're going to run to the directory containing the program:
package main
import (
"fmt"
"log"
"os/exec"
)
func main() {
cmd := exec.Command("program") // or whatever the program is
cmd.Dir = "C:/usr/bin" // or whatever directory it's in
out, err := cmd.Output()
if err != nil {
log.Fatal(err)
} else {
fmt.Printf("%s", out);
}
}
See the Cmd documentation for more information. Alternatively, you could use os/Chdir to change the working directory before running the program.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With