head用来显示档案的开头至标准输出中。如果指定了多于一个文件,在每一段输出前会给出文件名作为文件头。如果不指定文件,或者文件为"-",则从标准输入读取数据。
head命令
head
用来显示档案的开头至标准输出中。如果指定了多于一个文件,在每一段输出前会给出文件名作为文件头。如果不指定文件,或者文件为"-",则从标准输入读取数据。
- 命令格式
nl [选项]... [文件]...
- 命令功能
head
用来显示档案的开头至标准输出中,默认head
命令打印其相应文件的开头10行。
- 命令参数
-c, --bytes=[-]K
显示每个文件的前K 字节内容;如果附加"-"参数,则除了每个文件的最后K字节数据外 显示剩余全部内容
-n, --lines=[-]K
显示每个文件的前K 行内容;如果附加"-"参数,则除了每个文件的最后K行外显示剩余全部内容
-q, --quiet, --silent
不显示包含给定文件名的文件头
-v, --verbose
总是显示包含给定文件名的文件头
--help
显示此帮助信息并退出
--version
显示版本信息并退出
- 使用实例
# 显示文件的前n行
$ head -n 5 log.txt
2016-1-1
2016-1-2
2016-1-3
2016-1-4
2016-1-5
# 输出文件除了最后n行的全部内容
$ cat log2019.log
2019-1-1
2019-1-2
2019-1-3
2019-1-4
2019-1-5
2019-1-6
2019-1-7
2019-1-8
2019-1-9
2019-1-10
2019-1-11
2019-1-12
2019-1-13
2019-1-14
2019-1-15
2019-1-16
2019-1-17
2019-1-18
2019-1-19
2019-1-20
$ head -n -5 log2019.log
2019-1-1
2019-1-2
2019-1-3
2019-1-4
2019-1-5
2019-1-6
2019-1-7
2019-1-8
2019-1-9
2019-1-10
2019-1-11
2019-1-12
2019-1-13
2019-1-14
2019-1-15
# 显示文件前n个字节
$ head -c 30 log.txt
2016-1-1
2016-1-2
2016-1-3
# 显示文件除了最后n个字节以外的内容
$ head -c -30 log2019.log
2019-1-1
2019-1-2
2019-1-3
2019-1-4
2019-1-5
2019-1-6
2019-1-7
2019-1-8
2019-1-9
2019-1-10
2019-1-11
2019-1-12
2019-1-13
2019-1-14
2019-1-15
2019-1-16
2019-1-17
# head可以一次显示多个文件
$ head log.txt log1.txt
==> log.txt <==
2016-1-1
2016-1-2
2016-1-3
2016-1-4
2016-1-5
2016-1-6
2016-1-7
2016-1-8
2016-1-9
2016-1-10
==> log1.txt <==
2016-1-1
2016-1-2
2016-1-3
2016-1-4
2016-1-5
2016-1-6
2016-1-7
2016-1-8
2016-1-9
2016-1-10