登录
首页 >  Golang >  Go问答

带有颜色的 os/exec StdoutPipe

来源:Golang技术栈

时间:2023-04-30 16:39:03 353浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是Golang学习者,那么本文《带有颜色的 os/exec StdoutPipe》就很适合你!本篇内容主要包括带有颜色的 os/exec StdoutPipe,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

我正在用 Go 为我的世界服务器控制台制作一个包装器 它使用 os/exec 来运行服务器和 process.StdoutPipe() 用于子进程的实时输出。

但是,由于某种原因,我无法让它显示颜色。当我直接从终端运行服务器时,颜色会起作用,但是当我从 Go 运行它时它根本不起作用。

更重要的是,当我从 Go 运行它时,日志文件上也没有颜色代码。但是直接从终端运行它,日志文件绝对是用颜色代码弄乱的。我真的不明白这是怎么发生的。

有没有什么办法解决这一问题?
谢谢!

正确答案

解决这个问题的方法是从我的世界服务器强制颜色。你的 Go 程序根本没有问题。命令行程序检测它们是否在交互式终端上运行并在它们不是时禁用某些功能(例如颜色输出、分页等)是很常见的,假设它们正在通过一个脚本(在您的情况下确实如此)。

如果我的世界服务器没有这个选项,你可以欺骗它以为它是在交互式终端上运行的

好了,本文到此结束,带大家了解了《带有颜色的 os/exec StdoutPipe》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>