[Linux]cat、tail、head、grep、sed查看文件任意几行的数据

28 篇文章 1 订阅
24 篇文章 1 订阅

①grep -A 10 关键字 file名    -->显示file文件里匹配"关键字"那行及后10行

示例:grep -A 10 "err"  log-file.log

②grep -B 10 关键字 file名     -->显示file文件里匹配"关键字"那行及前10行

示例:grep -B 10 "err"  log-file.log

③grep -C 10 关键字 file名     --> 显示file文件里匹配"关键字"那行以及上下10行

示例:grep -C 10 "err"  log-file.log

④grep 之后结果太多,只取前面30行的匹配结果

grep ... | head -30

示例:grep -A 10 "err"  log-file.log | head -30

使用cat、tail、head组合

1、查看最后1000行的数据

cat 文件名 | tail -n 1000

示例:cat error-log.log | tail -n 1000

2、查看1000到3000行的数据

cat 文件名| head -n 3000 | tail -n +1000

示例:cat error-log.log |head -n 3000 | tail -n +1000

1.cat error-log 表示查看所有内容

2.tail -n 1000 表示查看文件最后1000行的内容

3.tail -n +1000 表示查看文件1000行开始以后的内容

4.head -n 1000 表示查看文件前1000行的内容

使用sed命令

显示10到300行的数据

sed -n '10,300p' 文件名

示例:sed -n '10,300p'  error-log.log

查看某个时间段的日志

sed -n '/开始时间/,/结束时间/p' 文件名

示例:sed -n '/2018-11-07 23:00:00/,/2018-11-07 23:30:00/p' error-log.log

注意:使用sed过滤nginx日志等文件时,时间格式要和目标文件格式一致,否则没有任何输出,

例如:nginx日志access.log文件,默认 “17/Sep/2021:10:01:08 “ 则对应指令(九月Sep需要转义)

cat access.log| sed -n '/17\/Sep\/2021:10:00:00/,/17\/Sep\/2021:10:50:00/p'|more

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值