gpt4 book ai didi

go - 在 Go 中为 CMD 执行 'cd' 命令

转载 作者:IT王子 更新时间:2023-10-29 01:49:14 25 4
gpt4 key购买 nike

我想使用 Go 和 exec 库转到某个路径,“c:”,然后运行一个 .exe 文件。

当我运行我的 Go 代码时,它会给我:

exec: "cd:/": file does not exist

最佳答案

cd 命令是您的 shell 的内置指令,无论是 bash、cmd.exe、PowerShell 还是其他。您不会先执行 cd 命令,然后再执行要运行的程序。相反,您想将要运行的 CmdDir 设置为包含程序的目录:

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 documentation了解更多信息。或者,您可以使用 os/Chdir在运行程序之前更改工作目录。

关于go - 在 Go 中为 CMD 执行 'cd' 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44206940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com