支持颜色的"更多"命令替代方案?

Avi*_*vio 7 linux shell command-line colors ncurses

这是我在Linux中排名前十的烦人之物.我喜欢终端的彩色输出:阅读时看起来很有用,也很有用.

我在新系统上做的第一件事是为两者设置别名lsgrep显示彩色输出,第二件是安装vimhtop.

我同时使用Gentoo和Ubuntu,我看到,emergeGentoo的包管理器具有更高的可读性,而apt-get/aptitude不仅仅因为它使用了比后者更多的颜色输出.

因此,每当我必须使用emerge命令时more,所有颜色都会丢失,我必须将注意力集中在每一行上以避免遗漏任何重要的内容.

我可以理解,一个基本的命令,如more不应该依赖ncurses(有人可能会说我们也有less,所以这两个中的一个甚至可以是颜色友好的),但为什么没有一个着名的替代品more支持颜色,因为有对vi/vim,top/htop等等?

谢谢你的任何提示.

rod*_*igo 17

大多数可以输出颜色的命令都有一个选项可供选择:

  • ON:始终输出颜色
  • 关:不输出颜色
  • AUTO:当且仅当输出是终端时才显示颜色

许多命令在彩色AUTO模式下自动工作.情况就是如此emege.这就是为什么管道输出时没有颜色的原因:pioe不是终端.

解决方案是告诉emerge无条件输出颜色.并告诉less不对其进行过滤,当然.

尝试:

emerge --color y | less -R
Run Code Online (Sandbox Code Playgroud)

  • @Avio - 顺便说一句,你可以将`-R`设置为`LESS`环境变量.使用`alias grep ='grep --color = always'`和`alias ls ='ls --color = always'`可以很好地工作. (2认同)
  • Avio - 实际上`more`将始终显示输入中存在的颜色.关于`less` IMO的最好的事情不是颜色,而是你可以导航输出并进行搜索(使用'/'). (2认同)