我开始学习和使用 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 的第一天很有趣。
阿晨1998
拉风的咖菲猫
相关分类