我想查看带有彩色输出、可滚动和可搜索的日志文件。我怎么做?
我试过了less /var/log/syslog | ccze | grep error,但它不能滚动。
那是因为你做错了。它less是可滚动的,因此需要是管道中的最后一个命令:
grep error /var/log/syslog | ccze -A | less -R
Run Code Online (Sandbox Code Playgroud)
使用的选项是:
-A, --raw-ansi
如果想要启用原始 ANSI 颜色序列而不是使用curses,这个选项就是这样做的。
这使得ccze使用ANSI 颜色代码而不是curses。虽然less可以使用-R选项处理 ANSI 转义(见下文),但诅咒更像是一个问题。使用巧妙地回避该问题的-A选项ccze。
-R 或 --RAW-CONTROL-CHARS 与 -r 类似,但只有 ANSI“颜色”转义序列以“原始”形式输出。与 -r 不同,在大多数情况下,屏幕外观保持正确。ANSI“颜色”转义序列是以下形式的序列:
ESC [ ... 米
其中“...”是零个或多个颜色规范字符 为了跟踪屏幕外观,假定 ANSI 颜色转义序列不移动光标。通过将环境变量 LESSANSIENDCHARS 设置为可以结束颜色转义序列的字符列表,您可以减少“m”以外的字符可以结束 ANSI 颜色转义序列的想法。并且您可以通过将环境变量 LESSANSIMIDCHARS 设置为可以出现的字符列表来减少认为 ESC 和 m 之间可能出现标准字符以外的字符。