gpt4 book ai didi

ruby - Ruby 中 shell 命令的颜色输出

转载 作者:数据小太阳 更新时间:2023-10-29 07:44:41 24 4
gpt4 key购买 nike

这是一个简单的 Ruby 脚本:

puts `ls -laG`

在 OS X 的 ls 中,-G 代表颜色。

在 bash 下运行时,我得到彩色输出。当从 Ruby 脚本运行上述代码时,我在结果输出中看不到颜色或 ANSI 转义序列。

根据我的阅读,我的猜测是因为脚本没有作为 tty 运行。有没有什么方法可以像在真正的 tty session 下运行命令一样运行命令 - 或者类似的东西?

最佳答案

查看 ls man page in OS X ,我看到提到了几个环境变量。 CLICOLOR 启用颜色(如 -G)和 CLICOLOR_FORCE(强制颜色甚至非终端输出)。

所以我想你会得到你想要的......

puts `env CLICOLOR=1 CLICOLOR_FORCE=1 ls -la`

您可以在 .profile 中设置环境变量。在我的例子中,我只是使用 env 命令来确保它们在命令行上设置。我放弃了 -G 选项,因为 CLICOLOR 做的是等效的。

关于ruby - Ruby 中 shell 命令的颜色输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/948359/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com