I want to use golang and 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
I want to use golang and 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.