我有一堆 apache 访问日志文件,我想知道哪些 IP 地址访问了我的 /contacts 文件夹。如何使用 shell 命令从所有日志文件中收集它们?
答案1
只需使用简单的 grep 和 awk 命令即可过滤记录并显示 IP。对于常见的日志格式,您可以使用类似这样的格式:
cat /path/to/apache/accesslog/dir/* |grep "/contacts" |awk '{ print $1 }' |sort -u
或者有更好的方法 - 设置一些中央日志记录和分析工具(如 ELK 堆栈)并使用它进行跨时间和数据的全局分析。