Linux截取某一段时间的日志问题(linux shell 传递参数)学到了

随心笔谈2年前发布 编辑
150 0
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买



目录Linux截取某一段时间的日志ps:Linux截取某一时间段内的日志

问题:在服务器上,UAT环境 logs日志 有2G 想要查看下载显然不合适,所以想要截取某一段时间的日志。

因为不清楚日志的精确开始时间和结束时间,为避免截取的日志里没有对应的时间而导致截取失败,所以用正则表达式[0-9]来对日志进行截取

本次截取的日志的时间格式为:

[2023-01-09 23:10:00.001] [myScheduler-5]
[2023-01-09 23:10:00.001] [myScheduler-5]

想要截取2023-01-09 23点 到 2023-01-10 3点的数据

注意上述的时间格式是后面跟了一个小数点加三位数字,日志的时间格式和我这个不一致的会导致截取日志失败,根据你的格式而定。

1、日志的时间格式为时间后面跟有 一个小数点加三位数字的截取命令

sed -n ‘/2023-01-09 23:[0-5][0-9]:[0-5][0-9].[0-9][0-9][0-9]/,/2023-01-10 03:[0-5][0-9]:[0-5][0-9].[0-9][0-9][0-9]/p’ 被截取的文件名 > 输出的文件名

2、日志的时间格式普通的时间格式的截取命令

sed -n ‘/2023-01-09 23:[0-5][0-9]:[0-5][0-9]/,/2023-01-10 03:[0-5][0-9]:[0-5][0-9]/p’ 被截取的文件名 > 输出的文件名

前言:截取8点到9点的日志,因为不清楚日志的精确开始时间和结束时间,为避免截取的日志里没有对应的时间而导致截取失败,所以用正则表达式[0-9]来对日志进行截取

本次截取的日志的时间格式为:

2022-10-01 09:30:03.071

注意上述的时间格式是后面跟了一个小数点加三位数字,日志的时间格式和我这个不一致的会导致截取日志失败

1、日志的时间格式为时间后面跟有 一个小数点加三位数字的截取命令

sed -n ‘/2022-10-01 11:[0-5][0-9]:[0-5][0-9].[0-9][0-9][0-9]/,/2022-10-01 12:[0-5][0-9]:[0-5][0-9].[0-9][0-9][0-9]/p’ 被截取的文件名.log > 输出的文件名.log

 2、日志的时间格式普通的时间格式的截取命令

sed -n ‘/2022-10-01 08:[0-9][0-9]:[0-9][0-9]/,/2022-10-01 09:[0-9][0-9]:[0-9][0-9]/p’ 被截取的文件名.log > 输出的文件名.log

3、使用以下命令查看当前文件夹下的所有文件的大小(可以查看日志有没有截取成功,不成功的话截取出来的日志大小和原来的相差无几)

ll -h

4、使用以下命令压缩日志,方便导出日志

tar -zcvf 压缩出来后的文件名.log.tar 被压缩的文件名.log

到此这篇关于Linux截取某一段时间的日志 的文章就介绍到这了,更多相关Linux截取某一段时间的日志 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:linux?shell字符串截取的详细总结(实用!)Linux Shell 截取字符串的方法示例linux shell 路径截取正则表达式

© 版权声明

相关文章