Linux下的head与tail对比讲解

183 阅读2分钟

本文已参与 ⌈新人创作礼⌋ 活动,一起开启掘金创作之路

Linux下的head与tail对比讲解

命令:head tail

head - output the first part of files;Print the first 10 lines of each FILE to standard output.

head 命令可用于查看文件的开头部分的内容,有一个常用的参数 -n 用于显示行数,默认为 10,即显示 10 行的内容。如果提供了多个文件名,则每个文件中的数据都以其文件名开头。

tail - output the last part of files;Print the last 10 lines of each FILE to standard output.显示文件结尾部分的内容,默认为10行。如果提供了多个文件名,则每个文件中的数据都以其文件名开头。

讲解并用图展示head与tail命令的参数n的实际效果。

用途:查看文件中的指定行

head-tail.png

声明:k为数字整数

head -n k		#查看文本的前k行
head -n -k	#不查看文本的最后k行
head -n +k	#查看文本的前k行

tail -n k		#查看文本的最后k行
tail -n -k		#查看文本的最后k行
tail -n +k		#不查看文本行首的k-1

举例:

用于举例的文件内容

	[root@localhost ~]# cat head.txt 
	1
	2
	3
	4
	5
	[root@localhost ~]# 

命令执行结果显示:

head -n k		#查看文本的前k行
	[root@localhost ~]# head -n 2 head.txt 
	1
	2

head -n +k	#查看文本的前k行
	[root@localhost ~]# head -n +2 head.txt 
	1
	2

head -n -k	#不查看文本的最后k行
	[root@localhost ~]# head -n -2 head.txt 
	1
	2
	3
	[root@localhost ~]# 


tail -n k		#查看文本的最后k行
	[root@localhost ~]# tail -n 2 head.txt 
	4
	5


tail -n +k		#不查看文本行首的k-1行
	[root@localhost ~]# tail -n +2 head.txt 
	2
	3
	4
	5

tail -n -k		#查看文本的最后k行
	[root@localhost ~]# tail -n -2 head.txt 
	4
	5
	[root@localhost ~]# 


同理:head与tail 的参数c是一样的效果;不同在于参数c是显示字节数;而非行数。