Linux上怎么查阅一个文件的内容呢?这里提供了几种途径可以实现:
1、cat :由第一行开始显示文件内容。
2、tac :从最后一行开始显示,可以看出tac是cat的倒写形式。
3 、nl :显示的时候顺便输出行号。
4、more :一页一页的显示文件内容。
5、less :与more相似,但是比more好的是,它可以往前翻页。
6、head:只看头几行。
7、tail :只看结尾几行。
8、od :以二进制的方式读取文件内容。
那么下面介绍一下这些命令的使用以及它们的重要参数:
(1)cat : 一行一行显示文件。
cat -A: 添加这个参数后可以显示出一些特殊字符,而不是显示空白。
cat -b: 列出行号,仅针对非空白行显示行号,空白行不显示行号。
cat -n: 列出行号,连空白行的行号也显示出来。
(2) tac :反向列文。
tac 是 cat 的倒写,意识就是从文件最后一行开始显示。
额,貌似没有什么参数。
(3)nl:添加行号打印。
nl -b : 指定行号指定的方式,主要有两种:① -b a:表示不论是否为空行,同样列出行号。②-b t :表示若果有空行,不列出空行行号。
-n: 列出行号表示的方法,主要有三种:① -n ln :行号显示在屏幕最左方。 ② -n rn 行号显示在自己字段的最右方。 ③ -n rz 行号显示在自己字段的最右方,且加上0.
-w行号的位数 例如 nl -w 5 则列出的行号有五位,00001 这样子。(亲测无效,不晓得为个啥····)
nl 与 cat -n 的差别就是nl可以对行号进行更多的设计选项。
(4)more与less:可翻页查看。
没有什么可选参数,但是在查看过程中,可以接收一些指令:
空格键: 向下反动一页。
Enter :代表向下滚动一行。
/字符串:代表在这个显示的内容中,向下查询“字符串”这几个关键字。
q:代表立即离开这个命令。
more独有的操作:
b或者 ctrl b 代表往回翻页
:f :立刻显示出文件名以及目前显示的行数。
less独有操作:
PageDown和PageUp:向上向下翻页。
?字符串 :向上查询“字符串”的功能。
n:重复前一个查询。
N:反复重复前一个查询。
(5)head和tail : 取出前几行和取出后几行。
这两个命令可以将文件中我们所需要的行数的内容单独取出来,两个命令都有公共参数 -n number.
例如:
head -n 100 filename.txt 显示filename的前100行内容。
tail -n 100 filename.txt 显示filename的后100行内容。
这两个命令默认都是显示10行。
参数还有一种用法:
head -n -100 filename.txt 表示显示除了后100行的所有内容。
tail -n -100 filename.txt 表示显示除了前100行后的所有内容。
tail 还有一个参数 -f ,表示持续检测文件知道ctrl c 终止程序。
例如 tail -f filename.txt 表示一直检测filename.txt这个文件,新加入的数据都会被显示到屏幕上。
那么现在有个问题: 加入想要显示filename.txt 文件的10行至20行的内容呢?
解决这个问题就是的流程是 先取前20行,再取后10行,所以命令应该是: head -n 20 filename.txt | tail -n 10 ,这样就可以了,此命令设计到管道命令,之后会介绍。