资料撷取---tail (取出后面几行)

tail (取出后面几行) 

[root@study ~]# tail [-n number] 文件  
选项与参数: 
-n  :后面接数字,代表显示几行的意思 
-f :表示持续侦测后面所接的档名,要等到按下[ctrl]-c 才会结束 tail 的侦测 
[root@study ~]# tail /etc/man_db.conf 
# 默认的情况中,显示最后的十行!若要显示最后的 20 行,就得要这样: 
[root@study ~]# tail -n 20 /etc/man_db.conf 
范例一:如果不知道/etc/man_db.conf 有几行,却只想列出 100 行以后的数据时? 
[root@study ~]# tail -n +100 /etc/man_db.conf
范例二:持续侦测/var/log/messages 的内容 
[root@study ~]# tail -f /var/log/messages 
 <==要等到输入[crtl]-c之后才会离开 tail 这个指令的侦测! 

 tail 的用法跟 head 的用法差不多类似,只是显示
的是后面几行就是了!默认也是显示十行,若要显示非十行,就加 -n number 的选项即可。

当下达『tail -n +100 /etc/man_db.conf』
代表该文件从100 行以后都会被列出来,同样的,在 man_db.conf 共有 131 行,因此第 100~131 行就会被列出来啦! 前面的 99 行都不会被显示出来喔! 

例题: 
假如我想要显示 /etc/man_db.conf 的第 11 到第 20 行呢? 
答: 
这个应该不算难,想一想,在第 11 到第 20 行,那么我取前 20 行,再取后十行,所以结果就是:『 head -n 20  /etc/man_db.conf | tail -n 10 』,这样就可以得到第 11 到第 20 行之间的内容了!

这两个指令中间有个管线 (|) 的符号存在,这个管线的意思是:『前面的指令所输出的讯息,请透过管线交由后续的指令继续使用』的意思。 所以, head -n 20 /etc/man_db.conf 会将文件内的 20 行取出来,但不输出到屏幕上,而是转交给后续的 tail 指令继续处理。 因此 tail 『不需要接档名』,因为 tail 所需要的数据是来自于 head 处理后的结果!

注:

[root@test study]#  head -n 20 /etc/man_db.conf |tail -n 10 -
上面这个命令也可以。

例题: 
承上一题,那如果我想要列出正确的行号呢?就是屏幕上仅列出 /etc/man_db.conf 的第 11 到第 20 行,且有行号存在? 
答: 
我们可以透过 cat -n 来带出行号,然后再透过 head/tail 来撷取数据即可!所以就变成如下的模样了: 
cat -n /etc/man_db.conf | head -n 20 | tail -n 10 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值