Linux截取某一段时间的日志问题
欢乐道士 人气:0Linux截取某一段时间的日志
问题:在服务器上,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' 被截取的文件名 > 输出的文件名
ps:Linux截取某一时间段内的日志
前言:截取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
加载全部内容