我必须使用golang执行shell脚本,同时我还必须传递env变量(未知数量的变量)。 cmd_string := "echo $TOKEN && echo $USER_NAME" cmd := exec.Command("bash", "-c", cmd_string) cmd_variables :=["USER_NAME=John", "TOKEN=1234", "BOOLEAN=true"] for _, vars := range cmd_variables { cmd.Env = append(os.Environ(), vars) }但它只是在数组中追加最后一个变量 如何追加env中的所有变量?任何其他更好的应用程序
1 回答
人到中年有点甜
TA贡献1895条经验 获得超7个赞
for _, vars := range cmd_variables {
cmd.Env = append(os.Environ(), vars)
}
应该是
cmd.Env = os.Environ()
for _, vars := range cmd_variables {
cmd.Env = append(cmd.Env, vars)
}
为了使每个追加调用真正追加到cmd.Env
- 1 回答
- 0 关注
- 170 浏览
添加回答
举报
0/150
提交
取消
