我需要使用Perl正则表达式从仅与webmin
和Invalid login as root from
匹配的安全日志中过滤以下行:
Apr 2 00:24:53 host webmin[98614]: Invalid login as root from 1.2.3.4
我尝试了这个,但它无法匹配:
$line =~ /^\S+\s+\d+\s+\S+ \S+ webmin[\]: \Invalid login as root from/)
我在这里缺少什么?
答案 0 :(得分:3)
[
是角色类的开头。你想要按字面意思匹配,所以你需要逃避它。98614
部分匹配。\I
应该只是I
。 \I
甚至会给你一个警告。
/^\S+\s+\d+\s+\S+ \S+ webmin\[\d+\]: Invalid login as root from/