命令用法head命令用来查看文件内容的前多少行或多少字节的内容。还可以通过awk、sed等命令来获取前多少行,但是相比之下head更擅长轻量,并且比其他都快速
常见用法举例-c 用来获取前多少字节的内容,还可加上单位,默认是字节。1(byte) 、1k(1KB)、1m(1MB)
-n用于获取前多上行
-q 获取多个文件的时候不显示文件头部
-v 获取多个文件的内容是显示头部,也是默认选项
获取前多少字节内容
–c n ,获取前n个字节的内容。可以加上单位1(byte) 、1k(1KB)、1m(1MB)默认但是是字节
-c 10 所以这里是10 byte,获取前两个字符(ASCII编码的时候)
1: [root@master lianxi]# head -c 10 test2: lwgarmstro[root@master lianxi]# –-c 1k 获取前1KB大小的内容,-c 1m 就是获取前1MB字节大小的内容
1: [root@master lianxi]# head -c 1k /etc/passwd2: root:x:0:0:root:/root:/bin/bash3: bin:x:1:1:bin:/bin:/sbin/nologin4: daemon:x:2:2:daemon:/sbin:/sbin/nologin5: adm:x:3:4:adm:/var/adm:/sbin/nologin6: lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin7: sync:x:5:0:sync:/sbin:/bin/sync8: ......后面省略
特殊用法获取前多少行内容
-n number ,比如 –n 3 就是获取前3行内容
1: [root@master lianxi]# cat -n /etc/passwd | head -n 32: 1 root:x:0:0:root:/root:/bin/bash3: 2 bin:x:1:1:bin:/bin:/sbin/nologin4: 3 daemon:x:2:2:daemon:/sbin:/sbin/nologin同时获取多个文件的前多上行或字节的内容
获取多个文件的前多少行或字节 的内容时候,默认会显示头部信息。
-v 显示头部信息(默认),-q 不显示头部信息
1: [root@master lianxi]# head -v -n 1 1.lua 2.lua2: ==> 1.lua <==3: arr = {23,21,89,289,34,23,1,32,434,21,1}4:5: ==> 2.lua <==6: print("hello world")1: [root@master lianxi]# head -q -n 1 1.lua 2.lua2: arr = {23,21,89,289,34,23,1,32,434,21,1}3: print("hello world")
1)有这样的需求,有时会把文件的一些信息写在文件的前多少个字节,比如一些标志信息,写在文件头部,我们可以通过head –c 来获取前多少个字节的头部信息
1: [root@master lianxi]# head -c 10 data2: [datafile][root@master lianxi]#2)-n number,可以简写成 –number ,比如获取前5行,可以 –n 5 ,也可以 –5
1: [datafile][root@master lianxi]# head -5 /etc/passwd2: root:x:0:0:root:/root:/bin/bash3: bin:x:1:1:bin:/bin:/sbin/nologin4: daemon:x:2:2:daemon:/sbin:/sbin/nologin5: adm:x:3:4:adm:/var/adm:/sbin/nologin6: lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
3)行号可以是负数,则表示从第一行开始到倒数第n –1 行,比如 –n –2 则表示从第一行到倒数第3行
1: [root@master lianxi]# wc -l 1.lua2: 7 1.lua3: [root@master lianxi]# cat -n 1.lua | head -n -54: 1 arr = {23,21,89,289,34,23,1,32,434,21,1}5: 26: [root@master lianxi]#
总结4)获取文件前多少行也可以用sed或awk,但是相比起来head更快
head命令,获取文件前多少行内容。