Golang为CMD执行cd命令

时间:2017-05-26 17:14:06

标签: go exec

我想使用golang和exec库转到某个路径“c:\”并运行.exe文件。

当我运行我的go代码时,它给了我:

exec:“cd:/”:文件不存在

3 个答案:

答案 0 :(得分:4)

cd命令是shell的内置命令,无论是bash,cmd.exe,PowerShell还是其他命令。您不会执行cd命令,然后执行您想要运行的程序。相反,您要将要运行的Dir的{​​{1}}设置为包含该程序的目录:

Cmd

有关详细信息,请参阅Cmd documentation。或者,您可以在运行程序之前使用os/Chdir更改工作目录。

答案 1 :(得分:2)

指定初始工作目录以在Cmd对象中运行命令:

cmd.Dir = "C:\\"

有关详细信息,请参阅documentation on the Cmd结构。

答案 2 :(得分:0)

根据命令是否需要在“root”目录下操作,可以使用os.Chdir(dir)来改变Go程序目录。然后,所有后续命令和路径都将相对于提供给 diros.Chdir 的值。