命令行小技巧:读取文件的不同方式
创始人
2024-03-02 00:40:30
0

作为图形操作系统,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 校对:wxy

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

相关内容

网警重拳出击,斩断“查档”...
近日,福建泉州公安网安部门在“净网-2025”专项工作中成功侦破一...
2025-10-22 09:45:37
网警重拳斩断“查档”侵公、...
近日,福建泉州公安网安部门在“净网-2025”专项工作中成功侦破一...
2025-10-22 08:46:30
微软Win11迎来“AI ...
10 月 17 日消息,科技媒体 bleepingcomputer...
2025-10-17 12:21:16
法庭文件曝光:美国曾施压荷...
【文/观察者网 王一】在中美博弈之际,荷兰政府近日突然下令,要求中...
2025-10-15 09:16:15
AI芯片生产商Cerebr...
当地时间10月3日,人工智能芯片生产商Cerebras Syste...
2025-10-04 10:18:58
美国加州AI透明度法案(S...
【美国加州AI透明度法案正式生效,引发企业态度分化】9月30日消息...
2025-09-30 11:44:24

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...
如何理解Apache 2.0许... 提要:Apache 2.0许可证中的专利许可条款使得开源代码可以安全使用,但它经常被误解。Apach...