在linux中使用head命令和tail命令查看文件中的指定行

时间:2021-09-23 07:32:47

在linux中使用head命令和tail命令查看文件中的指定行

 (2011-04-16 12:20:16)在linux中使用head命令和tail命令查看文件中的指定行转载
标签: 

杂谈

分类: Linux

 

使用head命令和tail命令显示指定的行:

head

-n, --lines=[-]K

              print the first lines instead of the first 10; with  the  leading

              ‘-’, print all but the last lines of each file

tail

-n, --lines=K

              output  the  last  lines, instead of the last 10; or use -n +K to

              output lines starting with the Kth

 

[root@localhost etc]# pwd

/etc

[root@localhost etc]# cat yum.conf

[main]

cachedir=/var/cache/yum/$basearch/$releasever

keepcache=0

debuglevel=2

logfile=/var/log/yum.log

exactarch=1

obsoletes=1

gpgcheck=1

plugins=1

installonly_limit=3

//此处是一空行

 This is the default, if you make this bigger yum won't see if the metadata

is newer on the remote and so you'll "gain" the bandwidth of not having to

download the new metadata and "pay" for it by yum not having correct

information.

 It is esp. important, to have correct metadata, for distributions like

Fedora which don't keep old packages around. If you don't like this checking

interupting your command line usage, it's much better to have something

manually check the metadata once an hour (yum-updatesd will do this).

metadata_expire=90m

//此处是一空行

PUT YOUR REPOS HERE OR IN separate files named file.repo

in /etc/yum.repos.d

[root@localhost etc]# cat yum.conf |wc -l

23

yum.conf文件共有23

 

[root@localhost etc]# head yum.conf

[main]

cachedir=/var/cache/yum/$basearch/$releasever

keepcache=0

debuglevel=2

logfile=/var/log/yum.log

exactarch=1

obsoletes=1

gpgcheck=1

plugins=1

installonly_limit=3

显示前10行,这个是默认值

 

[root@localhost etc]# head -n yum.conf

[main]

cachedir=/var/cache/yum/$basearch/$releasever

显示前2

 

[root@localhost etc]# head -n -20 yum.conf

[main]

cachedir=/var/cache/yum/$basearch/$releasever

keepcache=0

显示除最后20行以外的所有行

 

[root@localhost etc]# tail yum.conf

download the new metadata and "pay" for it by yum not having correct

information.

 It is esp. important, to have correct metadata, for distributions like

Fedora which don't keep old packages around. If you don't like this checking

interupting your command line usage, it's much better to have something

manually check the metadata once an hour (yum-updatesd will do this).

metadata_expire=90m

//此处是一空行

PUT YOUR REPOS HERE OR IN separate files named file.repo

in /etc/yum.repos.d

显示最后10行,这是默认值

 

[root@localhost etc]# tail -n yum.conf

PUT YOUR REPOS HERE OR IN separate files named file.repo

in /etc/yum.repos.d

显示最后2

 

[root@localhost etc]# tail -n +21 yum.conf

//此处是一空行

PUT YOUR REPOS HERE OR IN separate files named file.repo

in /etc/yum.repos.d

从第21行开始显示后面的所有行,即第21行到第23

 

显示第11行到第20(总共23)

从第11行开始显示,但不包括最后3

[huage@localhost etc]$ head -n -3 yum.conf |tail -n +11

 

显示前20行,但从第11行开始

[huage@localhost etc]$ head -n 20 yum.conf |tail -n +11

 

显示除最后3行以外的所有行,但只显示最后10

[huage@localhost etc]$ head -n -3 yum.conf |tail -n 10

 

显示前20行中的后10

[huage@localhost etc]$ head -n 20 yum.conf |tail -n 10

 

从第11行开始显示,但只显示前10

[huage@localhost etc]$ tail -n +11 yum.conf |head -n 10

 

从第11行开始显示,但不包括最后3

[huage@localhost etc]$ tail -n +11 yum.conf |head -n -3

 

显示最后13行中的前10

[huage@localhost etc]$ tail -n 13 yum.conf |head -n 10

 

显示最后13行中除末尾的3行以外的前10

[huage@localhost etc]$ tail -n 13 yum.conf |head -n -3