aki*_*aki 13 apache logging command-line grep
我需要解析Apache日志文件以查找特定的可疑模式(如SQL注入).
比如我正在寻找 id='%20or%201=1;
我正在使用grep来检查日志文件中的这个模式(以及其他模式),因为这些日志很大,需要很长时间
这是我的命令:
grep 'id=' Apache.log | egrep "' or|'%20"
Run Code Online (Sandbox Code Playgroud)
我需要使用更好或更快的方法或命令来加快搜索速度吗?
lar*_*sks 22
对于初学者,您不需要grep输出输出egrep. egrep提供了grep正则表达式解析的超集,所以你可以这样做:
egrep "id='( or|%20)'" apache.log
Run Code Online (Sandbox Code Playgroud)
呼叫egrep与呼叫相同grep -E.
这可能会让你的性能提升一点.如果您可以查找固定字符串而不是正则表达式,那么这也可能有所帮助.您可以告诉grep使用以下-F选项查找固定字符串:
grep -F "id='%20or" apache.log
Run Code Online (Sandbox Code Playgroud)
但是使用固定字符串会失去很多灵活性.