linux查看文件里的内容,linux如何查看文件中的内容
chanong
|如何使用cat、more、head 和tail 命令查看Linux 文件的内容而不仅仅是文本文件。
来源:https://linux.cn/article-12340-1.html 作者:Sandra Henry-stocker 译者:geekpi (字数:5839,阅读时间:约7 分钟)
Linux 提供了很多显示文件内容的命令,包括cat、more、head 和tail,而这仅仅是开始。
首先,即使是最明显的命令也有许多用户不使用的选项。还有一些通用命令提供一些独特的功能。本文介绍用于查看文件内容的命令以及用于自定义这些视图以满足您的需求的选项。
catcat 命令将文本文件的全部内容发送到终端窗口进行显示。事实上,如果我输入“cat”,然后输入包含数千行的文件的名称,这些行将在窗口中快速滚动,以至于我只能看到最后一屏文本。 cat 命令对于Linux 用户来说是众所周知的,但即使是这个基本命令也提供了许多许多人从未使用过的有用选项,例如输出的行号。您可以更进一步,选择如何对行进行编号,而不仅仅是对它们进行编号。
每行编号如下:
$ cat -n msg 1Hello -- 2 3 祝你有美好的一天!4 5 6 及以上.现在7 8bye!910s。您还可以仅对包含内容的行进行编号。请注意,仅包含空格的行不会被此命令视为“空”,而是会编号。
$ cat -b msg 1你好-- 2我希望你有一个美好的一天!3就是这样.好吧,4再见!5在s.cat 命令中,使用-s 选项删除重复的空行。要完全忽略空行,使用-s 选项。您需要添加另一个命令。
$ cat -s msgHello --我希望您度过了美好的一天!就是这样.再见!要忽略所有空白行,请将cat 的输出运行到grep 命令中,如下所示:只需通过管道传输即可。点(.)匹配包含任意字符的文本,因此出现非空行,用于匹配结束一行的回车和换行(LCTT翻译注释:此处原文有误,已更正)。
$ cat msg | grep .Hello --我希望您度过了美好的一天!就是这样.再见!s。-E 选项在每行末尾添加一个$ 符号以提供视觉提示。我们提供该行末尾有更多空间。
$ cat -E msgHello --$$我希望你有美好的一天!$$$ 就是这样.现在$$ 再见!$$s.$ -A 允许你在末尾查看$ 和制表符每行显示为^I 而不是空格。
$ cat -A msgHello --$$祝你有美好的一天!$$$就这样.^Inow$$再见!$$s.$要查看文件的开头和结尾部分,请使用head 并使用tail 。结束显示文件的开头或结尾。默认为10 行。您可以使用-3(显示3 行)或-11(显示11 行)等字符串指定要显示的附加行数。 tail 命令的工作方式与head 命令类似,但显示文件的末尾而不是开头。
$ head -3 msgHello --Have a beautiful day!$ tail -3 msgbye!s. 您还可以同时使用head 和tail 命令在文件中间显示文本。只需选择起点和要显示的行数即可。在此示例中,该命令显示文件中的后100 行并使用cat 对行进行编号。
$ cat -b mybigfile | head -200 | tail -100 101Invoice #2020-06-07a 已发送给供应商.使用more 或less 来查看文本屏幕。要浏览屏幕内容,more 命令是一个自然的选择。添加了使用键盘上的向上和向下箭头在文件中上下移动的功能。这允许您单步浏览内容,然后后退浏览文件。
使用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 o - -\n\n 我希望e0000020 040 171 157 165 040 1 4 1 162 145 040 150 141 166 151 156 147 040你正在康复。04 0 151 164 040 146 157 162 \n\n\n即0000100 040 056 056 056 011 156 157 167 012 012 142 171 145 041 012 012. 是\t (011 in八进制)。
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 0 010000020 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 0 03 0 04 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 02 0 \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 arrow.jpgarrow.png: 如果只有JPEG图像数据,JFIF标准1.01,长宽比,密度1x1,分段长度16,基线,精度8,500x375,分量3,使用jp2a将文件转换为基于文本的处理as 图像命令如果您连续工作并想知道特定图像中的内容,您可以使用jp2a(jpeg 到ascii)之类的工具来进行字符渲染。这种格式的图像识别效果取决于文件。所显示图像的版本是“低分辨率”测试,因此不要期望太多。这是一只分辨率非常低的帝企鹅。 (请移开视线)
$ jp2a Imperial_Penguin.jpgMMMMMMMMWOdkNMMMMMMMMMMMMMMMMMMMXK0kc.OKMMMMMMMMMMMMMMMMMMNK0Ol.Xx'dNMMMMMMMMMMMMMMMMMMMMd;lx00Oo. MMMMMMMMx:kkKNWWMMMMl. 'NMMMMMMMMMMMMMMddx0NNNWMMMMK '.NMMMMMMMMMMMMck0NNWWWWMMd. lMMMMMMMMMMMMMM .d0KXNWWWWMMMo .WMMMMMMMMMMMM.xOXNNWNMMMMMM.KMMMMMMMMMMMM'kKNKWXWMMMK .'.0MMMMMMMMMMMMxckXNNNNMMMX.XMMMMMMMMMMMMMW;MMWoKxldXKNNMMMMMM;MMMMMMMMMMMMMMxxxdNWNXNMMMM;MMMMMMMMMMMMMMxOcoo0XOOOOWMW,kMMMMMMMMMMMMMMMM0xK。如果您需要操作文件的内容,其中一些选项很有用。其他人只是……有趣。
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 China 自豪发布。
单击“详细信息”可访问文本中的链接








