科百科
当前位置: 首页 科技资讯

linux下怎么查看文件内容(在Linux上查看文件内容的)

时间:2023-06-04 作者: 小编 阅读量: 1 栏目名: 科技资讯

catcat命令将文本文件的全部内容发送到终端窗口以供查看。请注意,对于此命令,仅包含空格的行不被视为“空”,而是会被编号。tail命令与head的工作方式相同,但是显示文件的尾部而不是头部。在此例中,命令将在文件中显示第二个一百行,并在cat的帮助下为这些行编号。od命令特别有用的用途之一是查看非文本文件以获取可以标识文件类型的信息。file命令从文件开头的数据中提取了所有这些描述性信

如何使用 cat、more、head 和 tail 命令查看 Linux 文件的内容,而不仅仅是文本文件。

  • 来源:https://linux.cn/article-12340-1.html
  • 作者:Sandra Henry-stocker
  • 译者:geekpi

(本文字数:5839,阅读时长大约:7 分钟)

Linux 提供了许多命令来查看文件的内容,包 括 cat、more、head 和 tail,但这只是一个开始。

一方面,即使是最显而易见的命令也有很多许多用户不会去使用的选项。还有一些普普通通的命令提供了一些独特的功能。在本文中,我们将介绍查看文件内容的命令,以及如何定制这些视图以更好地满足你的需求的选项。

cat

cat 命令将文本文件的全部内容发送到终端窗口以供查看。实际上,如果你输入 cat,然后输入包含数千行内容的文件名,那么这些行将以极快的速度在你的窗口中滚动,你将无法看到除了最后一屏外的其他文本。对于 Linux 用户来说 cat 命令很熟悉,但即使是这个基本命令也提供了许多有用的选项,例如对输出中的行进行编号,这是我们许多人可能从未使用过的。更进一步,你不仅可以对行进行编号,还可以选择如何编号。

对每行进行编号就像这样:

$ cat -n msg 1Hello -- 2 3I hope you are having a wonderful day! 4 5 6That's it for ... now 7 8bye! 910s.

你也可以只对有内容的行编号。请注意,对于此命令,仅包含空格的行不被视为“空”,而是会被编号。

$ cat -b msg 1Hello -- 2I hope you are having a wonderful day! 3That's it for ... now 4bye! 5s.

cat 命令允许你使用 -s 选项忽略重复的空白行,但是要完全忽略空白行你必须添加另一个命令。

$ cat -s msgHello --I hope you are having a wonderful day!That's it for ... nowbye!s.

要忽略所有空白行,只需如下将 cat 的输出通过管道传递给 grep 命令。 点(.)匹配包含任意字符的文本,因此它将显示任意非空的行,用于结束一行的回车换行做匹配(LCTT 译注:此处原文有误,径改)。

$ cat msg | grep .Hello --I hope you are having a wonderful day!That's it for ... nowbye!s.

-E 选项通过在每行末尾加 $ 符提供视觉提示,来显示行尾是否还有多余的空格。

$ cat -E msgHello --$$I hope you are having a wonderful day!$$$That's it for ... now$$bye!$$s.$

使用 -A 时,既可以在每行的末尾显示 $ 字符,并且制表符会显示为 ^I 而不是空白。

$ cat -A msgHello --$$I hope you are having a wonderful day!$$$That’s it for ...^Inow$$bye!$$s.$

使用 head 和 tail 显示文件部分内容

head 和 tail 显示文件的头部或尾部,默认为十行。 你可以使用 -3(显示 3 行)或 -11(显示 11 行)之类的字符串来指定要查看的其它行数。tail 命令与 head 的工作方式相同,但是显示文件的尾部而不是头部。

$ head -3 msgHello --I hope you are having a wonderful day!$ tail -3 msgbye!s.

你还可以结合使用 head 和 tail 命令来查看文件中间的文本。你只需要选择起点和想要查看行数即可。在此例中,命令将在文件中显示第二个一百行,并在 cat 的帮助下为这些行编号。

$ cat -b mybigfile | head -200 | tail -100 101Invoice #2020-06-07a sent to vendor ...

使用 more 或者 less 浏览一屏文本

more 命令是一次浏览一屏内容的自然之选,而 less 通过使用上下键盘箭头增加了在文件中上下移动的能力,这样你就可以遍历内容,然后在文件中回退。

使用 od 查看文本的两种方法

od(八进制转储)命令能够以常规文本和一系列 ASCII 值(即该文本在文件中的实际编码方式)的形式查看文件。在下面的例子中可以看到,带编号的行显示了 ASCII 数字值,而其他行则显示了文本和不可打印的字符。

$ od -bc msg0000000 110 145 154 154 157 040 055 055 012 012 111 040 150 157 160 145H e l l o - -\n\n I h o p e0000020 040 171 157 165 040 141 162 145 040 150 141 166 151 156 147 040y o u a r e h a v i n g0000040 141 040 167 157 156 144 145 162 146 165 154 040 144 141 171 041a w o n d e r f u l d a y !0000060 012 012 012 124 150 141 164 047 163 040 151 164 040 146 157 162 \n\n\n T h a t ' s i t f o r0000100 040 056 056 056 011 156 157 167 012 012 142 171 145 041 012 012. . .\t n o w\n\n b y e !\n\n0000120 163 056 012s .\n

请注意,换行符显示为 \n(八进制 012),而制表符显示为 \t(八进制 011)。

od 命令特别有用的用途之一是查看非文本文件以获取可以标识文件类型的信息。在这里,我们看到 JFIF(JPEG 文件交换格式)标签,该标签让 file 之类报告文件类型的命令将它标示为 jpg 文件。这里还有很多其他有用的信息,特别是如果你对这些文件的格式感到好奇的话。

在接下来的命令中,我们查看 jpg 文件的开始部分。

$ od -bc arrow.jpg | head -120000000 377 330 377 340 000 020 112 106 111 106 000 001 001 000 000 001377 330 377 340\0 020 J F I F\0 001 001\0\0 0010000020 000 001 000 000 377 333 000 103 000 003 002 002 002 002 002 003 \0 001\0\0 377 333\0 C\0 003 002 002 002 002 002 0030000040 002 002 002 003 003 003 003 004 006 004 004 004 004 004 010 006002 002 002 003 003 003 003 004 006 004 004 004 004 004\b 0060000060 006 005 006 011 010 012 012 011 010 011 011 012 014 017 014 012006 005 006\t\b\n\n\t\b\t\t\n\f 017\f\n0000100 013 016 013 011 011 015 021 015 016 017 020 020 021 020 012 014 \v 016\v\t\t\r 021\r 016 017 020 020 021 020\n\f0000120 022 023 022 020 023 017 020 020 020 377 333 000 103 001 003 003022 023 022 020 023 017 020 020 020 377 333\0 C 001 003 003

如果我们要 file 命令提供有关此图像的信息,我们可能会看到类似下面这样的信息。file 命令从文件开头的数据中提取了所有这些描述性信息:

$ file arrow.jpgarrow.png: JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 500x375, components 3

使用 jp2a 将文件视为基于文本的图像

如果你只能在命令行工作,并且想了解特定图像包含的内容,那么可以使用 jp2a(jpeg to ascii)之类的工具提供字符渲染。图像在这种格式下的识别程度取决于文件。不要有太多期待,因为你将看到的图像版本是“低分辨率”下的测试!这是一只分辨率很低的帝王企鹅。(请离远点看)

$ jp2a Emperor_Penguin.jpgMMMMMMMMWOdkNMMMMMMMMMMMMMMMMMMMMMMXK0kc.... ,OKMMMMMMMMMMMMMMMMMMNK0Ol... :Xx'dNMMMMMMMMMMMMMMMMMMMMd;lx00Oo. ..xMMMMMMMMMMMMMMMMMMK.OXMMMMMN,...lMMMMMMMMMMMMMMMMMx'KXNNMMMMK....0MMMMMMMMMMMMMMMMx:kkKNWWMMMl.. 'NMMMMMMMMMMMMMMMddx0NNNWMMMK'...;NMMMMMMMMMMMMMMck0NNWWWWWMMd..lMMMMMMMMMMMMMM.d0KXNWWWWMMo...WMMMMMMMMMMMMM.xOXNNWNMMMW. ....KMMMMMMMMMMMMM'kKNKWXWMMMK..'.0MMMMMMMMMMMMMxckXNNNNMMMX.:..XMMMMMMMMMMMMMW;xKNWWWMMMM. .;. NMMMMMMMMMMMMMMok0NNWNWMMMx .l..MMMMMMMMMMMMMMMkxOKXWXNMMMMl.:'dMMMMMMMMMMMMMMM0dKOdKXXNMMMMNx,WMMMMMMMMMMMMMMMWoKxldXKNNMMMMM;MMMMMMMMMMMMMMMMMxxxxdNWNXNMMMM;MMMMMMMMMMMMMMMMMxOcoo0XOOOOWMW,kMMMMMMMMMMMMMMM0xK;.cO0dNX:0XXd;NMMMMMMMMMMNkdd:,'ldXXO0xl;x0kx:;lKMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM

总结

Linux 上有很多命令可以通过各种方式查看文件的内容。其中一些选项在你需要处理文件内容时可能会非常有用。其它的只是……有趣。


via: https://www.networkworld.com/article/3561490/5-ways-to-examine-the-content-of-files-on-linux.html

作者: Sandra Henry-Stocker 选题: lujun9972 译者: geekpi 校对: wxy

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

点击“了解更多”可访问文内链接
    推荐阅读
  • 2022年属虎人的运程(2022年属虎人的运程如何)

    2022年属虎人的运程?下面希望有你要的答案,我们一起来看看吧!属虎人的能力越强在这一年里就越要小心谨慎些,低估别人的实力容易吃亏,高估了自己的实力会出糗,稳定自己的情绪,保持平常心的状态去面对生活里发生的一切,这样才能够减少意外和麻烦的出现,也可以避开小人的纠缠。

  • 猕猴桃的营养价值(猕猴桃的营养价值是什么)

    猕猴桃的营养价值它含有亮氨酸、苯丙氨酸、异亮氨酸、酪氨酸、丙氨酸等十多种氨基酸,以及丰富的矿物质,包括丰富的钙、磷、铁,还含有胡萝卜素和多种维生素。猕猴桃对保持人体健康,防病治病具有重要的作用。多食用猕猴桃可以预防老年骨质疏松,抑制胆固醇的沉积,从而防治动脉硬化,还可改善心肌功能,防治心脏病等,也能对抗癌起到一点儿作用。多食用猕猴桃,还能阻止体内产生过多的过氧化物,防止老年斑的形成,延缓人体衰老。

  • 守护雷霆劫怎么玩(教你玩守护雷霆劫的简单方法)

    守护雷霆劫怎么玩阵容构成。2秘术,3召唤,2守护,4雷霆.看具体情况,若没有4雷霆,3雷霆也是可以的。掘墓,劫,奥恩,索拉卡,安妮,娜美,宝石,雷霆拉克丝。若没有雷霆拉克丝,可用狗熊换成3雷霆也很猛。前期需平稳过度,可用极地掠食或者森林德鲁伊等强势阵容,中期较为乏力,存钱利息升人口或变换中期强势阵容。

  • 气溶胶传播后能开窗吗(什么是气溶胶传播)

    通过流行病学调查显示,病例多可以追踪到与确诊的病例有过近距离密切接触的情况,这符合飞沫传播和接触传播的特征。但目前尚没有证据显示新型冠状病毒通过气溶胶传播。有的网友还问,空气中是否有新型冠状病毒?从这个角度讲,在日常通风环境下,空气中一般不会有新型冠状病毒。对于防护措施,一般的工作生活条件下,采取正确佩戴口罩这种飞沫传播防护措施,足以保护普通公众不被感染。

  • 燕窝简介(燕窝相关简介)

    燕窝简介燕窝是雨燕科几种金丝燕分泌的唾液及其绒羽混合粘结所筑成的巢穴。主产于马来西亚、印度尼西亚、泰国和缅甸等东南亚国家及我国的福建和广东沿海地带。燕窝中的主要营养成分是蛋白质,其中有1种必需氨基酸(赖氨酸),3种条件性必需氨基酸,而人体需要的必需氨基酸有8种,条件性必需氨基酸有13种。

  • 蛋奶球的做法(制作蛋奶球的方法详解)

    下面希望有你要的答案,我们一起来看看吧!蛋奶球的做法将除蔓越莓干以外的材料混合均匀放微波炉里加热2分钟,再加热一会儿。弄碎后再碾的细腻一点,取适量放在保鲜膜上。再放上一块,收起保鲜膜,手掐住封口。放在椰蓉里打个滚。做好了,香甜可口。

  • 一般高血压患者可以喝什么茶(高血压患者能喝茶吗)

    广州中医药大学第一附属医院心血管内科主任吴辉教授指出,茶叶中含有茶多酚,具有增强血管弹性的作用。它能降低血液中胆固醇、甘油三酯及低密度脂蛋白,还能降低胆固醇与磷脂的比例,从而达到了预防及治疗动脉硬化的目的。吴辉教授认为,绿茶和菊花茶同时饮用也可以起到辅助降压的效果。这样也可以起到降低血压,预防动脉硬化的作用。

  • 自然堂产品有假的吗(自然堂发布澄清声明)

    通告也指出,经生产(代理)企业所在地食品药品监管部门现场核查,伽蓝集团否认该产品为企业所生产(代理)。同时,也表明伽蓝集团将持续配合相关监管和执法部门加大打假力度,全力维护消费者合法权益。一直以来,伽蓝集团始终严格把控产品质量,遵守国家相关法律法规,目前官方授权销售的所有产品,消费者均可以放心使用。

  • 突围付长明和皮丹签合同(突围皮丹结局取代齐本安)

    因为这样,皮丹不能担负责任,别人行贿时,他会觉得这种事就是理所当然。这很大程度上,是因为程端阳的纵容。多年后,煤炭,矿业资源过剩,京州能源成为公司的负增长企业。齐本安在京州的一番作为,惹怒了很多人,更重要的是惹怒了林满江,动了林满江的蛋糕,让林满江对他产生严重的不满。

  • 包价旅游和旅游包价的区别(看完这篇你就明白了)

    旅游包价在全包价基础上,扣除午、晚餐费用的包价形式,其目的在于降低产品的直观价格,提高产品的竞争能力,同时也可更好地满足游客在用餐方面的要求,两者区别一目了然。包价旅游是指旅游者在旅游活动中开始前即将全部或部分旅游费用预付给旅行社,由旅行社根据同旅游者签订的合同,相应地为旅游者安排旅游途中的吃、住、行、游、购、娱等活动。