TranslateProject/translated/tech/20181012 Command line quick tips- Reading files different ways.md

3.6 KiB
Raw Blame History

命令行快速提示: 读取文件的不同方式

作为图形操作系统Fedora 的使用是令人愉快的。你可以轻松地点按,完成任何任务。 但你可能已经看到了,在引擎盖下还有一个强大的命令行。 想要在 shell 下使用,只需要在 Fedora 系统中打开你的命令行应用程序。 这篇文章是向你展示命令行使用方法的系列之一。

在这部分,你将学习如何以不同的方式读取文件,如果你在系统中打开一个命令行,你就有可能需要读取一个或两个文件。

一应俱全的大餐

对命令行终端的用户来说, cat 命令众所周知。 当你 cat 一个文件,你很容易的把整个文件内容展示在你的屏幕上。而真正发生在引擎盖下的是文件一次读取一行, 然后一行一行写入屏幕。

假设你有一个文件,叫做 myfile 这个文件每行只有一个单词。为了简单起见,每行的单词就是这行的行号,就像这样:


    one
    two
    three
    four
    five

所以如果你 cat 这个文件,你就会看到如下输出:


    $ cat myfile
    one
    two
    three
    four
    five

并没有太惊喜,不是吗? 但是有个有趣的转折,只要使用 tac 命令,你可以从后往前 cat 这个文件。(请注意, Fedora 对这种有争议的幽默不承担任何责任!)


    $ tac myfile
    five
    four
    three
    two
    one

cat 命令允许你以不同的方式装饰输出,比如,你可以输出行号:


    $ cat -n myfile
     1 one
     2 two
     3 three
     4 four
     5 five

还有其他选项将显示特殊字符和其他功能。 要了解更多, 请运行 man cat 命令, 看完之后, 按 q 即可退出回到 shell。

挑选你的食物

通常, 文件太长, 无法全部显示在屏幕上, 您可能希望能够像文档一样查看它。 这种情况下,可以试试 less 命令:


    $ less myfile

你可以用方向键,也可以用 PgUp/PgDn 来查看文件, 按 q 就可以退回到 shell。

实际上,还有一个 more 命令,它是基于在旧的 UNIX 系统命令的。如果在退回 shell 后仍想看到该文件, 则可能需要使用它。less 命令使你回到你离开 shell 之前的样子,并且清除屏幕上你看到的所有的文件内容。

一点披萨或甜点

有时, 你所需的输出只是文件的开头。 比如,有一个非常长的文件,当你使用 cat 命令时,会显示这个文件所有内容,前几行的内容很容易滚动过去,导致你看不到。head 命令会帮你获取文件的前几行:


    $ head -n 2 myfile
    one
    two

同样,你会用 tail 命令来查看文件的末尾几行:


    $ tail -n 3 myfile
    three
    four
    five

当然, 这些只是在这个领域的几个简单的命令。但当涉及到阅读文件时,你就能容易地开始。


via: https://fedoramagazine.org/commandline-quick-tips-reading-files-different-ways/

作者:Paul W. Frields 选题:lujun9972 译者:distant1219 校对:校对者ID

本文由 LCTT 原创编译,Linux中国 荣誉推出