Linux大几十GB的大日志文件查找

linux大几十GB的大日志文件查找,网关日志没有使用logrotate来进行切割,一天的日志有几十个GB, 当使用 grep , sed命令时会卡住很长时间, 基本是假死状态。决定使用脚本来处理。

思路就是: 先将大日志按8000行进行切割成小日志,再循环使用 sed 查找后追加至一个临时的日志当中。

脚本内容如下:

#!/bin/sh

echo ‘literate all the logfiles’
rm -rf x* # 删除掉历史的小文件
split -l 8000 ******.log -a 6 # 8000 行来切切割,小文件前缀是 x开头后加6个随机英文字母
echo ‘split files done’
for file in `ls`; do
echo $file
if [ -f “$file” ]; then
if [[ “$file” =~ ^”x” ]]; then

echo “find the $file”

sed -n ‘/2025-06-29 09:15/,/2025-06-29 09:20/p’ $file >> 0629.log # 将日志追加至0629.log中

echo ‘finish the grep append write’
fi
fi
done

echo ‘Done’

Linux大几十GB的大日志文件查找插图

最后,在目标文件 0629.log 中再来查看内容。

欢迎使用66资源网
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!
7. 本站有不少源码未能详细测试(解密),不能分辨部分源码是病毒还是误报,所以没有进行任何修改,大家使用前请进行甄别!

66源码网 » Linux大几十GB的大日志文件查找

提供最优质的资源集合

立即查看 了解详情