首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >前冲颜色

前冲颜色
EN

Stack Overflow用户
提问于 2011-09-02 22:08:34
回答 3查看 241关注 0票数 3

有什么方法可以导出命令输出的颜色吗?

让我们用一个小例子来解释它:

代码语言:javascript
复制
ls -alh --color=auto

将打印目录的彩色内容,而

代码语言:javascript
复制
ls -alh --color=auto | cat

不会印什么颜色的。我想知道的是一个技巧或一个工具,让我们称之为magic,它可以还原这些命令,比如\033[1m,这样就可以为后一种处理提供颜色:

代码语言:javascript
复制
ls -alh --color=auto | magic | cat

代码语言:javascript
复制
ls -alh --color=auto | magic >> file

更新:

我只是在本例中使用ls,但想知道是否存在普遍的可能性。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-09-02 22:28:25

代码语言:javascript
复制
script outputfile command 

会成功的。例如:

代码语言:javascript
复制
script capture.txt ls --color=always
票数 3
EN

Stack Overflow用户

发布于 2011-09-02 22:13:30

因为颜色代码实际上是ls输出的一部分,所以没有办法“恢复”它们(因为它们一开始就不在那里)。

但是如果您使用ls --color=always,即使在非交互模式下使用,ls也会输出颜色代码.

票数 2
EN

Stack Overflow用户

发布于 2011-09-02 22:15:20

基本上,ls是智能的,并且检测输出何时不会到达终端。如果您想让它少一点,请尝试ls --color=always

使用颜色区分文件类型的

在默认情况下和使用--color=never时都是禁用的。使用--color=auto,ls只在标准输出连接到终端时才发出颜色代码。LS_COLORS环境变量可以更改设置。使用dircolors命令来设置它.

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7289672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档