加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – Grep资源使用情况

发布时间:2020-12-14 00:43:48 所属栏目:Linux 来源:网络整理
导读:我的任务是编写一个 shell脚本来浏览 Linux和Solaris服务器上许多目录中的数百个日志文件.一些日志以多种格式压缩,一些日志的大小为几GB.我担心grep使用服务器上的大量资源,并可能通过耗尽内存来关闭机器上运行的Web服务器(如果可能发生这种情况). 我应该解
我的任务是编写一个 shell脚本来浏览 Linux和Solaris服务器上许多目录中的数百个日志文件.一些日志以多种格式压缩,一些日志的大小为几GB.我担心grep使用服务器上的大量资源,并可能通过耗尽内存来关闭机器上运行的Web服务器(如果可能发生这种情况).

我应该解压缩文件,grep它们然后再次压缩它们或使用zgrep(或等效的)在压缩时搜索它们吗?使用一种方法优于另一种方法是否有优势资源?

此外,是否有一种简单的方法可以将命令的内存使用量限制为当前可用的百分比?

如果有人能够解释在运行这些命令时内存使用情况如何,那么它会有很多帮助.

解决方法

grep内存使用量是不变的;它不随文件大小?缩放.它不需要将整个文件保留在内存中,只需将其搜索的区域保留在内存中.

减压是类似的.内存使用量与字典大小成正比,而不是与文件总大小成正比.字典大小无需担心:最多几兆字节.

我不担心一些简单的grep / zgrep / zcat | grep搜索删除其他进程.这个东西是Linux的面包和黄油.

?但要注意扫描files with incredibly long lines.它的内存使用量随线长而变化.您可以使用grep -I跳过二进制文件,这通常就足够了.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读