gpt4 book ai didi

不同文件夹中的golang exec.Command

转载 作者:IT王子 更新时间:2023-10-29 02:22:08 25 4
gpt4 key购买 nike

我对分配了 .Dir 的 exec.Command 有疑问。当我从应用程序运行命令时出现错误。但是如果我从 shell 运行它,同样的命令工作正常。

command := exec.Command("git", "rev-parse", "--verify", "tags/v1.0.0^{commit}")
command.Dir = "sub/subdir"
out, err := command.CombinedOutput()
fmt.Printf("Executed command [%s] %s\nErrorCode = %s\nOutput = %s\n", command.Dir, command.Args, err, out)

输出:

Executed command [sub/subdir] [git rev-parse --verify tags/v1.0.0^{commit}]
ErrorCode = exit status 128
Output = fatal: Needed a single revision

外壳命令:

$ (cd sub/subdir; git rev-parse --verify tags/v1.0.0^{commit})
c1f3b8707ac001dab875781def3c729e3ed6de2c

我做错了什么?

最佳答案

使用绝对路径。查看filepath.Abs

关于不同文件夹中的golang exec.Command,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42950517/

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