【发布时间】:2015-11-28 06:42:05
【问题描述】:
我开始学习和使用 Go 来了解制作一些更复杂的控制台/cli 类型工具而不是使用 shell 或 Python 是什么感觉。我想执行命令并显示输出。我想出了如何打印这样的输出:
out, err := exec.Command("pwd").Output()
print(string(out))
有没有办法执行命令并像 shell 脚本一样将其默认为标准输出,还是我需要为此创建一个辅助函数?
更新:在获得 IntelliJ 和 Go 插件后,我在 Go 源代码中四处寻找,并同意目前没有辅助方法是没有办法的。
根据 exec.go 源代码中的此注释,无法重用 Cmd 对象:
// A Cmd cannot be reused after calling its Run, Output or CombinedOutput
// methods.
我确实将 stdout 选项合并到我自己的助手中,包括其他选项,如 shell 集成。如果我能让它有用的话,我会尝试把它变成开源的。有趣的围棋第一天。
【问题讨论】:
标签: go