Linux less 命令

2018-06-03|Categories: External cmd, Linux|

常用选项

less命令的选项非常丰富,使用方式也很灵活,既可以在Shell命令行直接指定,也可以在less命令打开的窗口中输入选项,然后按回车键生效

-r, –raw-control-chars

默认情况下,less会忽略控制字符或转义序列实际代表的意义,而只是将其显示为普通字符,例如下图中的ANSI颜色转义代码全部被显示为普通字符:

ls -1 /src/builddeps/ | less

如果添加了-r选项,实际的颜色会被显示出来:

ls -1 /src/builddeps/ | less -r

但是,启用-r选项后,由于不同终端模拟器对控制字符的解释不一致,less可能无法准确判断字符在终端屏幕的显示位置,进而导致显示异常,例如,较长的行在错误的位置被截断。

如果只是需要显示ANSI颜色,使用-R, --RAW-CONTROL-CHARS选项即可。-R选项只会显示ANSI颜色,其它控制字符仍然当做普通字符显示,因此不会导致显示异常。

-N, –LINE-NUMBERS

-N选项可以显示行号。

less -N *.err

上图中很多行号显示了不止一次,表示那一行太长,超出终端屏幕宽度,因此被折行显示。如果不想长行被折行显示,需要用到下面的-S选项。

-S, –chop-long-lines

less -NS *.err

此时可以通过方向键查看超出屏幕的内容。如果想恢复折行显示,在窗口中输入-S再回车即可:

常用变量

LESS_TERMCAP_md

LESS_TERMCAP_md变量可以改变ManPage关键词颜色:

左边窗口:

red=$'\e[31m';

export LESS_TERMCAP_md="$red";

右边窗口:

yellow=$'\e[33m';

export LESS_TERMCAP_md="$yellow";

Leave A Comment