将bash脚本转换为Perl或Python

时间:2015-07-26 12:18:16

标签: python bash perl

我有一个bash脚本,它会从日志文件中获取数值,但它会消耗服务器资源,并且服务器会变得过载。我想在Perl或Python中编写相同的脚本。日志文件大小约为1GB,脚本需要每天运行。

while read  i
do
egrep -h $i  /opt/logs/oc-resizer.log  >> /opt/logs/purge-resizer.tmp
done  < /opt/nasa/shahid/logo.csv

1 个答案:

答案 0 :(得分:2)

只需将脚本缩小为:

#!/bin/bash
egrep -f /opt/nasa/shahid/logo.csv /opt/logs/oc-resizer.log \
              >> /opt/logs/purge-resizer.tmp

速度会快得多。它会更快 - 如果你正在搜索固定字符串而不是模式 - 使用fgrep而不是egrep:

fgrep -f /opt/nasa/shahid/logo.csv /opt/logs/oc-resizer.log \
              >> /opt/logs/purge-resizer.tmp

有关详细信息,请参阅man grep

我不认为perl或python会比这更快。