文章摘要
这篇文章讨论了在Linux服务器上如何截取特定时间段的日志文件。由于服务器上的日志文件可能较大(如2GB),直接下载不合适,因此需要通过正则表达式和sed命令来精确截取所需时间段的日志。
文章提到,由于不清楚日志的精确开始时间和结束时间,作者使用正则表达式[0-9]来避免截取失败的情况。文章还详细介绍了两种常见的日志时间格式:
1. **带有小数点和三位数字的时间格式**(如`2023-01-09 23:10:00.001`):
- 使用命令截取从`2023-01-09 23:00:00`到`2023-01-10 03:00:00`的时间段。
- 命令示例:`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' 被截取的文件名.log > 输出的文件名.log`
2. **普通的时间格式**(如`2022-10-01 09:30:03`):
- 使用命令截取从`2022-10-01 11:00:00`到`2022-10-01 12:00:00`的时间段。
- 命令示例:`sed -n '/2022-10-01 11:[0-5][0-9]:[0-5][0-9]/,/2022-10-01 12:[0-5][0-9]:[0-5][0-9]/p' 被截取的文件名.log > 输出的文件名.log`
文章还提到了验证截取日志成功与否的方法,如使用`ll -h`命令查看文件大小,以及使用`tar -zcvf`命令压缩日志文件,方便导出和管理。
总结:文章通过示例展示了如何根据不同的日志时间格式使用 sed 命令精确截取日志文件,并提供了验证和压缩的实用建议。
目录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: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 路径截取正则表达式
© 版权声明
文章版权归作者所有,未经允许请勿转载。