Linux(14)RedHat7 基本命令十三--less命令详解(待有时间再完善,请莫看)

导言

  今天博文讲述另一个查看文件内容的命令,这个命令是less,less和more命令很相似,但是相对强大了许多 。

less命令

作用

  在linux官方说明中,把less是这么解释的“ opposite of more” ,可以说是与more命令相对,这就难以理解了,不过不影响我们对less命令的使用和了解。
  具体来说,说到less就得说more,Less是类似于more的程序,与more不同,它允许文件中的向后移动以及向前移动。 此外,less不必在启动之前读取整个输入文件,因此对于大输入文件,它比文本编辑器(如 vi)启动得更快。 less使用termcap(或某些系统上的terminfo),因此它可以在各种终端上运行,甚至支持硬拷贝终端。 (在硬拷贝终端上,应在屏幕顶部打印的线条以插入符号为前缀。)
  less强大而又方便,对于linux内部的man page则是调用less实现的,其实博主都感觉less不应该叫less,毕竟功能上比more更多。只能猜测可能是因为less刚开始以很少的内容载入,而more载入整个文件的原因才这么订立命令名字的。
  less支持[pageup] [pagedown] 等按键,又支持搜寻字符串的上下寻找(比起昨天说的more来说,寻找后,只能往后寻找好得多)。

用法

less [-[+]aBcCdeEfFgGiIJKLmMnNqQrRsSuUVwWX~]
            [-b space] [-h lines] [-j line] [-k keyfile]
            [-{oO} logfile] [-p pattern] [-P prompt] [-t tag]
            [-T tagsfile] [-x tab,...] [-y lines] [-[z] lines]
            [-# shift] [+[+]cmd] [--] [filename]...

  简化来说是:

less [参数] 文件 

详细全选项参数解释

  在以下描述中,^ X表示control-X,即快捷键ctrl+X。

短选项长选项含义(作用)
-?--help此选项显示less接受的命令摘要(与h命令相同)。 (根据shell解释问号的方式,可能需要引用问号,因此:“ - \?”。)
-a--search-skip-screen导致搜索在屏幕上显示的最后一行之后开始,从而跳过屏幕上显示的所有行。 默认情况下,搜索从屏幕上的第二行开始(或在最后找到的行之后;请参阅-j选项)。
-bn--buffers=n指定将用于每个文件的缓冲区空间量,以千字节(1024字节)为单位。 默认情况下,每个文件使用64K的缓冲区空间(除非文件是管道;请参阅-B选项)。 -b选项指定应为每个文件使用n千字节的缓冲区空间。 如果n为-1,则缓冲区空间不受限制; 也就是说,整个文件可以读入内存。
-B--auto-buffers默认情况下,从管道读取数据时,会根据需要自动分配缓冲区。 如果从管道中读取大量数据,则可能导致分配大量内存。 -B选项禁用管道缓冲区的这种自动分配,因此管道只使用64K(或-b选项指定的空间量)。 警告:使用-B可能导致错误显示,因为只有最近查看过的管道数据部分才会保留在内存中; 任何早期数据都会丢失。
-c--clear-screen导致全屏重绘从顶行向下绘制。 默认情况下,通过从屏幕底部滚动来完成全屏重绘。
-C--CLEAR-SCREEN与-c相同,用于与较旧版本的less兼容。
-d--dumb如果终端是dumb的话,-d选项会禁止正常显示的错误消息; 也就是说,缺少一些重要的功能,例如清除屏幕或向后滚动的功能。 -d选项不会改变dumb终端上的less行为。
-Dxcolor--color=xcolor[仅限MS-DOS]设置显示的文本的颜色。 x是单个字符,用于选择正在设置颜色的文本类型:n =正常,s =突出显示,d =粗体,u =下划线,k =闪烁。 颜色是由句点分隔的一对数字。 第一个数字选择前景色,第二个数字选择文本的背景色。 单个数字N与N.M相同,其中M是正常背景颜色。
-e--quit-at-eof导致第二次到达文件结束时less自动退出。 默认情况下,退出less的唯一方法是通过“q”命令。
-E--QUIT-AT-EOF导致第一次到达文件结束时less自动退出。
-f--force强制打开非常规文件。 (非常规文件是目录或设备专用文件。)还会在打开二进制文件时禁止显示警告消息。 默认情况下,less会拒绝打开非常规文件。 请注意,即使设置了-f,某些操作系统也不允许读取目录。
-F--quit-if-one-screen如果可以在第一个屏幕上显示整个文件,则会导致less自动退出。
-g--hilite-search通常情况下,less会突出显示与上一个搜索命令匹配的所有字符串。 -g选项更改此行为以仅突出显示上一个搜索命令找到的特定字符串。 这可以导致运行速度比默认值快一些。
-G--HILITE-SEARCH-G选项禁止搜索命令找到的所有字符串突出显示。
--old-bot恢复到屏幕行为的旧底部。 如果长线在到达终端底部时未正确包裹,同时向前滚动,则有时可能需要这样做。
-hn--max-back-scroll=n指定要向后滚动的最大行数。 如果需要向后滚动超过n行,则屏幕将向前重新绘制。 (如果终端无法向后滚动,则暗示-h0。)
-i--ignore-case导致搜索忽略大小写; 也就是说,大写和小写被认为是相同的。 如果搜索模式中出现任何大写字母,则忽略此选项; 换句话说,如果一个模式包含大写字母,那么该搜索不会忽略大小写。
-I--IGNORE-CASE与-i类似,但即使模式包含大写字母,搜索也会忽略大小写。
-jn--jump-target=n指定屏幕上要定位“目标”行的行。目标行是由任何命令指定的行,用于搜索模式,跳转到行号,跳转到文件百分比或跳转到标记。屏幕行可以用数字指定:屏幕上的顶行是1,下一行是2,依此类推。指定相对于屏幕底部的线条的数字可能为负:屏幕底部的行为-1,底部的第二行为-2,依此类推。或者,屏幕线可以指定为屏幕高度的一小部分,从小数点开始:.5位于屏幕中间,.3是距离第一行的十分之三,依此类推。如果将行指定为分数,则在调整终端窗口大小时重新计算实际行号,以使目标行保持在屏幕高度的指定分数处。如果使用任何形式的-j选项,则向前搜索从目标行之后的行开始,向后搜索从目标行开始。例如,如果使用“-j4”,则目标行是屏幕上的第四行,因此向前搜索从屏幕上的第五行开始。
-J--status-column在屏幕的左边缘显示status列。 status列显示与当前搜索匹配的行。 如果-w或-W选项生效,也会使用status列。
-kfilename--lesskey-file=filename使得less打开并将命名文件解释为lesskey文件。 可以指定多个-k选项。 如果设置了LESSKEY或LESSKEY_SYSTEM环境变量,或者在标准位置找到了lesskey文件(请参阅KEY BINDINGS),则它也可用作lesskey文件。
-K--quit-on-intr当输入中断字符(通常是^ C)时,立即退出会导致less。 通常情况下,中断字符会导致停止执行任何操作并返回其命令提示符。 请注意,使用此选项使得无法从“F”命令返回到命令提示符。
-L--no-lessopen忽略LESSOPEN环境变量(请参阅预处理部分)。 可以从less内设置此选项,但它仅适用于随后打开的文件,不适用于当前打开的文件。
-m--long-prompt导致less冗长提示(如more命令一样),并且显示文件的百分比。 默认情况下,less是用冒号提示。
-n--line-numbers不显示行号。 在某些情况下,默认值(使用行号)可能会导致运行速度变慢,尤其是在输入文件很大的情况下。 使用-n选项可以避免此问题。 使用行号表示意味着:行号将显示在详细提示和=命令中,而v命令会将当前行号传递给编辑器(另请参见下面PROMPTS中对LESSEDIT的讨论)。
-N--LINE-NUMBERS在显示屏中每行的开头显示行号。
-o<filename>--log-file=filename使用less查看的内容输入到命名为filename的文件。 仅适用于管道。 如果该文件已经存在,则在覆盖该文件内容之前,less会要求确认。
-O<filename>--LOG-FILE=filename-O选项类似于-o,但是它将覆盖现有文件而不要求确认。
如果未指定日志文件,则可以从less内使用-o和-O选项指定日志文件。 没有文件名,他们将仅报告日志文件的名称。 “ s”命令等效于从less内指定-o。
-p<pattern>--pattern=pattern-p选项等效于+/pattern,意味着让less从第一个模式匹配的位置开始显示
-Pprompt--prompt=prompt提供一种根据自己的喜好定制三种提示样式风格的方法。 通常将此选项放在LESS环境变量中,而不是在每个less命令中键入该选项。 这样的选项必须是LESS变量中的最后一个选项,或者必须以美元符号($)结束。
  • -Ps后跟一个字符串,将默认(简短)提示更改为该字符串。
  • -Pm更改medium (-m)的提示。
  • -PM更改 long (-M)的提示。
  • -Ph更改帮助屏幕的提示。
  • -P=更改=命令之后的提示。
  • -Pw更改等待数据输入时的消息(在F命令中)

所有提示字符串均由字符序列和特殊的转义序列组成。 有关更多详细信息,请参见PROMPTS”部分。
-q--quiet or --silent导致中等程度的“quiet ”操作:如果尝试滚动到文件末尾或文件开头之前,则不会发出终端铃声。 如果终端带有“visual bell”,则使用它。 其他某些错误(例如键入无效字符)将响起铃声。 默认情况下,在所有这种情况下都将响铃。
-Q--QUIET or
--SILENT
导致完全“安静”的操作:任何错误都不会让终端铃响起。
-r--raw-control-chars导致以“raw”形式显示控制字符。 默认设置是使用脱字符号(^)显示控制字符, 例如,control-A(八进制001)显示为^A
警告:当使用-r选项时,less不能跟踪屏幕的实际外观(因为这取决于屏幕对每种控制字符的响应方式)。 因此,可能导致各种显示问题,例如长线在错误的位置被分割。
-R--RAW-CONTROL-CHARS类似于-r选项,但是仅以“raw”形式输出ANSI“颜色”的转义字符。 与-r不同,在大多数情况下,可以正确维持屏幕外观。 ANSI“颜色”转义序列是以下形式的序列:
ESC [ ... m
其中“ …”是零个或多个颜色指定字符为了跟踪屏幕外观,假定ANSI颜色转义字符序列不移动光标。 通过将环境变量LESSANSIENDCHARS设置为可以结束颜色转义序列的字符列表,您可以少考虑“ m”以外的字符可以结束ANSI颜色转义序列。 通过将环境变量LESSANSIMIDCHARS设置为可以显示的字符列表,您可以少考虑ESC和m之间可能会出现标准字符以外的字符。
-s--squeeze-blank-lines将连续的空白行压缩为单个空白行。 在查看nroff输出时,此功能很有用。
-S--chop-long-lines长度超过屏幕宽度的行被截断而不是折叠。 即,未示出不适合屏幕宽度的长行部分,通过方向键控制查看。 默认设置是折叠长行。 也就是说,在下一行显示其余部分。
-ttag--tag=tag-t选项后紧跟一个TAG,将编辑包含该标签的文件。 为此,标签信息必须可用。
例如,当前目录中可能存在一个名为“ tags”的文件,该文件先前是由ctags(1)或等效命令构建的。 如果设置了环境变量LESSGLOBALTAGS,则将其视为与global(1)兼容的命令的名称,并执行该命令以查找标记。在less命令中可以使用(- command)的方式指定-t选项作为检查新文件的方式。在less中使用-t选项等效于命令-t
-Ttagsfile--tag-file=tagsfile指定要使用的标签文件,而不是使用包含“tags”的文件。
-u--underline-special导致退格和回车被视为可打印字符; 也就是说,当它们出现在输入中时,它们将被发送到终端。
-U--UNDERLINE-SPECIAL使退格键,制表符和回车符被视为控制字符; 也就是说,它们按照-r选项指定的方式进行处理。
默认情况下,如果既未指定-u也未指定-U,则会对下划线字符旁边出现的退格键进行特殊处理:带下划线的文本是使用终端的硬件下划线功能显示的。 此外,还会对出现在两个相同字符之间的退格键进行特殊处理:使用终端的硬件粗体功能可以打印出文本上方叠加文字格式(overstruck)的文本。 其他退格键以及前面的字符将被删除。 立即返回换行符的回车符将被删除。 其他回车符将按照-r选项的指定进行处理。 如果-u和-U都无效,则可以搜索文本上方叠加文字格式的文本或带下划线的文本。
-V--version显示less的版本信息
-w--hilite-unread向前移动整页后,临时突出显示第一行“新”行。 第一行“新”行是紧接在屏幕底部之前的行之后的行。 在g或p命令之后也突出显示目标行。在下一个引起移动的命令中将移除该高亮。 除非-J选项有效,否则整行都突出显示,在这种情况下,仅状态列突出显示。
-W--HILITE-UNREAD与-w类似,但是在任何大于一行的向前移动命令之后临时突出显示第一行。
-xn,...--tabs=n,...设置制表位。 如果仅指定一个n,则制表位设置为n的倍数。 如果指定了多个用逗号分隔的值,则在这些位置设置制表位,然后以与最后两个相同的间距继续。 例如,-x9,17将在位置9、17、25、33等处设置制表符。n的默认值为8。
-X--no-init禁用将termcap初始化和取消初始化字符串发送到终端。 如果取消初始化字符串做了不必要的操作(如清除屏幕),有时这是理想的。
-yn--max-forw-scroll=n指定要向前滚动的最大行数。 如果需要向前滚动多于n行,则重新绘制屏幕。 如果需要,可以使用-c或-C选项从屏幕顶部重新绘制。 默认情况下,任何向前移动都会导致滚动。
-[z]n--window=n将默认滚动窗口大小更改为n行。 默认值为一屏。 z和w命令还可以用于更改窗口大小。 为了与更多版本的兼容性,可以省略“ z”。 如果数字n为负,则表示比当前屏幕尺寸小n行。 例如,如果屏幕为24行,则-z-4将滚动窗口设置为20行。 如果将屏幕大小调整为40行,则滚动窗口将自动更改为36行。
-"cc--quotes=cc更改文件名引用字符。 如果试图命名同时包含空格和引号字符的文件,则可能有必要。 后面跟一个字符,这会将引号字符更改为该字符。 然后,包含空格的文件名应使用该字符而不是双引号引起来。 后跟两个字符,将打开引号更改为第一个字符,将关闭引号更改为第二个字符。 然后,在包含空格的文件名之前应使用引号引起来,然后使用引号引起来。 请注意,即使在更改引号字符之后,此选项仍为-“(破折号后加双引号)。
-~--tilde通常,文件末尾的行显示为单个波浪号(〜)。 此选项使文件末尾的行显示为空白行。
-#--shift指定在RIGHTARROW和LEFTARROW命令中水平滚动的默认位置数。 如果指定的数字为零,则它将默认位置数设置为屏幕宽度的一半。 或者,可以将数字指定为屏幕宽度的一部分,从小数点开始:.5是屏幕宽度的一半,.3是屏幕宽度的十分之三,依此类推。 如果将数字指定为分数,则如果调整了终端窗口的大小,则会重新计算实际滚动位置数,以使实际滚动数保持在屏幕宽度的指定分数上。
--no-keypad禁用将键盘初始化和取消初始化字符串发送到终端。 如果小键盘字符串使数字小键盘的行为不理想,这有时很有用。
--follow-name通常,如果在执行F命令时对输入文件进行了重命名,则尽管名称发生了变化,但仍会更少地显示原始文件的内容。 如果指定了–follow-name,则在F命令中,less会定期尝试按名称重新打开文件。 如果重新打开成功并且文件是与原始文件不同的文件(这意味着已经创建了一个与原始文件(现在已重命名的文件)具有相同名称的新文件),则显示该新文件的内容将更少。
--命令行参数“-”表示选项参数的结尾。 紧随其后的所有参数都被解释为文件名。 当查看名称以“-”或“ +”开头的文件时,此功能很有用。
+如果命令行选项以+开头,则该选项的其余部分将视为less命令的初始命令一部分。 例如,+G告诉less是从文件末尾开始而不是开头,而+/xyz告诉它从文件中第一次出现“ xyz”开始。 在特殊情况下,+ 的作用类似于+ g; 也就是说,它以指定的行号开始显示(但是,请参见上面“ g”命令下的警告)。 如果该选项以++开头,则初始命令适用于正在查看的每个文件,而不仅仅是第一个。 前面描述的+命令还可以用于为每个文件设置(或更改)初始命令。
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YuYunTan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值