我必须从golang运行可安装的shell脚本。我必须在运行脚本时提供所有yes选项。
我可以从命令
运行它yes | install.sh
我如何在golang中提供相同的内容。
我尝试了以下内容,
c := exec.Command("/bin/bash", 'path to install.sh', '| yes');
err = c.Run()
c := exec.Command("/bin/bash", 'yes | ', 'path to install.sh')
err = c.Run()
但两者都不起作用。我需要帮助。
提前致谢
答案 0 :(得分:0)
我尝试使用以下代码,在我的情况下它可以正常工作。
cmd1 := exec.Command("/bin/bash","-c", "yes")
cmd2 := exec.Command("path to install.sh", "2>&1 >/dev/null")
cmd2.Stdin, _ = cmd1.StdoutPipe()
cmd2.Stdout = os.Stdout
_ = cmd2.Start()
_ = cmd1.Run()
_ = cmd2.Wait()