我的任务是编写一个 shell 脚本来 grep 通过 Linux 和 Solaris 服务器上许多目录中的数百个日志文件。一些日志以多种格式压缩,一些日志大小为几 GB。我担心 grep 会在服务器上使用大量资源,并且可能会通过耗尽内存来关闭机器上运行的 Web 服务器(如果这可能会发生)。
我应该解压缩文件,grep 它们然后再次压缩它们还是使用 zgrep (或等效)在压缩时搜索它们?使用一种方法比另一种方法更有优势吗?
此外,是否有一种简单的方法可以将命令的内存使用限制为当前可用内存的百分比?
如果有人可以解释运行这些命令时内存使用的工作原理,那将有很大帮助。