我有一个 go 程序需要执行另一个可执行程序,我想从 go 代码执行的程序位于/Users/myuser/bin/目录中,其完整路径为/Users/myuser/bin/prog
代码是:
package main
import (
"fmt"
"log"
"os/exec"
)
func main() {
cmd := exec.Command("prog")
cmd.Dir = "/Users/myuser/bin/"
out, err := cmd.CombinedOutput()
if err != nil {
log.Fatalf("cmd.Run() failed with %s\n", err)
}
fmt.Printf("combined out:\n%s\n", string(out))
}
当我在 MacOS Mojave 上运行上述代码时,我总是收到以下错误:
命令因 fork/exec /Users/myuser/bin/ 失败:权限被拒绝
我见过类似错误的其他答案,例如Go fork/exec 权限被拒绝错误和Go build & exec: fork/exec: 权限被拒绝,但我不确定这里是否是这种情况。
是我机器的权限问题吗?或者可以从代码中完成其他操作?
aluckdog
开心每一天1111
相关分类