当前位置 博文首页 > linux 中more、less 和 most 的区别

    linux 中more、less 和 most 的区别

    作者:Sk 时间:2021-02-12 12:27

    如果你是一个 Linux 方面的新手,你可能会在 more、less、most 这三个命令行工具之间产生疑惑。在本文当中,我会对这三个命令行工具进行对比,以及展示它们各自在 Linux 中的一些使用例子。总的来说,这几个命令行工具之间都有相通和差异,而且它们在大部分 Linux 发行版上都有自带。

    我们首先来看看 more 命令。

    more 命令

    more 是一个老式的、基础的终端分页阅读器,它可以用于打开指定的文件并进行交互式阅读。如果文件的内容太长,在一屏以内无法完整显示,就会逐页显示文件内容。使用回车键或者空格键可以滚动浏览文件的内容,但有一个限制,就是只能够单向滚动。也就是说只能按顺序往下翻页,而不能进行回看。

    更正

    有的 Linux 用户向我指出,在 more 当中是可以向上翻页的。不过,最原始版本的 more 确实只允许向下翻页,在后续出现的较新的版本中也允许了有限次数的向上翻页,只需要在浏览过程中按 b 键即可向上翻页。唯一的限制是 more 不能搭配管道使用(如 ls | more)。(LCTT 译注:此处原作者疑似有误,译者使用 more 是可以搭配管道使用的,或许与不同 more 版本有关)

    按 q 即可退出 more。

    更多示例

    打开 ostechnix.txt 文件进行交互式阅读,可以执行以下命令:

    $ more ostechnix.txt

    在阅读过程中,如果需要查找某个字符串,只需要像下面这样输入斜杠(/)之后接着输入需要查找的内容:

    /linux

    按 n 键可以跳转到下一个匹配的字符串。

    如果需要在文件的第 10 行开始阅读,只需要执行:

    $ more +10 file

    就可以从文件的第 10 行开始显示文件的内容了。

    如果你需要让 more 提示你按空格键来翻页,可以加上 -d 参数:

    $ more -d ostechnix.txt

    如上图所示,more 会提示你可以按空格键翻页。

    如果需要查看所有选项以及对应的按键,可以按 h 键。

    要查看 more 的更多详细信息,可以参考手册:

    $ man more

    less 命令

    less 命令也是用于打开指定的文件并进行交互式阅读,它也支持翻页和搜索。如果文件的内容太长,也会对输出进行分页,因此也可以翻页阅读。比 more 命令更好的一点是,less 支持向上翻页和向下翻页,也就是可以在整个文件中任意阅读。

    在使用功能方面,less 比 more 命令具有更多优点,以下列出其中几个:

    • 支持向上翻页和向下翻页
    • 支持向上搜索和向下搜索
    • 可以跳转到文件的末尾并立即从文件的开头开始阅读
    • 在编辑器中打开指定的文件

    更多示例

    打开文件:

    $ less ostechnix.txt

    按空格键或回车键可以向下翻页,按 b 键可以向上翻页。

    如果需要向下搜索,在输入斜杠(/)之后接着输入需要搜索的内容:

    /linux

    按 n 键可以跳转到下一个匹配的字符串,如果需要跳转到上一个匹配的字符串,可以按 N 键。

    如果需要向上搜索,在输入问号(?)之后接着输入需要搜索的内容:

    ?linux

    同样是按 n 键或 N 键跳转到下一个或上一个匹配的字符串。

    只需要按 v 键,就会将正在阅读的文件在默认编辑器中打开,然后就可以对文件进行各种编辑操作了。

    按 h 键可以查看 less 工具的选项和对应的按键。

    按 q 键可以退出阅读。

    要查看 less 的更多详细信息,可以参考手册:

    $ man less

    most 命令

    most 同样是一个终端阅读工具,而且比 more 和 less 的功能更为丰富。most 支持同时打开多个文件。你可以在打开的文件之间切换、编辑当前打开的文件、迅速跳转到文件中的某一行、分屏阅读、同时锁定或滚动多个屏幕等等功能。在默认情况下,对于较长的行,most 不会将其截断成多行显示,而是提供了左右滚动功能以在同一行内显示。

    更多示例

    打开文件:

    $ most ostechnix1.txt

    按 e 键可以编辑当前文件。

    如果需要向下搜索,在斜杠(/)或 S 或 f 之后输入需要搜索的内容,按 n 键就可以跳转到下一个匹配的字符串。

    如果需要向上搜索,在问号(?)之后输入需要搜索的内容,也是通过按 n 键跳转到下一个匹配的字符串。

    同时打开多个文件:

    $ most ostechnix1.txt ostechnix2.txt ostechnix3.txt

    在打开了多个文件的状态下,可以输入 :n 切换到下一个文件,使用 ↑ 或 ↓ 键选择需要切换到的文件,按回车键就可以查看对应的文件。

    要打开文件并跳转到某个字符串首次出现的位置(例如 linux),可以执行以下命令:

    $ most file +/linux

    按 h 键可以查看帮助。

    按键操作列表

    移动:

    • 空格键或 D 键 – 向下滚动一屏
    • DELETE 键或 U 键 – 向上滚动一屏
    • ↓ 键 – 向下移动一行
    • ↑ 键 – 向上移动一行
    • T 键 – 移动到文件开头
    • B 键 – 移动到文件末尾
    • > 键或 TAB 键 – 向右滚动屏幕
    • < 键 – 向左滚动屏幕
    • → 键 – 向右移动一列
    • ← 键 – 向左移动一列
    • J 键或 G 键 – 移动到某一行,例如 10j 可以移动到第 10 行
    • % 键 – 移动到文件长度某个百分比的位置

    窗口命令:

    • Ctrl-X 2、Ctrl-W 2 – 分屏
    • Ctrl-X 1、Ctrl-W 1 – 只显示一个窗口
    • O 键、Ctrl-X O – 切换到另一个窗口
    • Ctrl-X 0 – 删除窗口

    文件内搜索:

    • S 键或 f 键或 / 键 – 向下搜索
    • ? 键 – 向上搜索
    • n 键 – 跳转到下一个匹配的字符串

    退出:

    • q 键 – 退出 most ,且所有打开的文件都会被关闭
    • :N、:n – 退出当前文件并查看下一个文件(使用 ↑ 键、↓ 键选择下一个文件)

    要查看 most 的更多详细信息,可以参考手册:

    $ man most

    总结

    more – 传统且基础的分页阅读工具,仅支持向下翻页和有限次数的向上翻页。

    less –more 功能丰富,支持向下翻页和向上翻页,也支持文本搜索。在打开大文件的时候,比 vi 这类文本编辑器启动得更快。

    most – 在上述两个工具功能的基础上,还加入了同时打开多个文件、同时锁定或滚动多个屏幕、分屏等等大量功能。

    js
    下一篇:没有了