我想使用golang和exec库转到某个路径“ c:\”并运行.exe文件。
当我运行go代码时,它会给我:
exec:“ cd:/”:文件不存在
该cd命令是shell的内置命令,无论是bash,cmd.exe,PowerShell还是其他。您将不执行cd命令,然后执行要运行的程序。相反,你要设置Dir的Cmd你要运行到包含程序的目录:
cd
Dir
Cmd
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); } }
有关更多信息,请参见Cmd文档。或者,您可以在运行程序之前使用os / Chdir更改工作目录。