Linux日志分析常用命令汇总

1、查看当天有多少个IP访问:

awk ‘{print $1}‘ log_file|sort|uniq|wc –l

2、查看某一个页面被访问的次数:

grep "/index.php" log_file | wc –l

3、查看每一个IP访问了多少个页面:

awk ‘{++S[$1]} END {for (a in S) print a,S[a]}‘ log_file

4、将每个IP访问的页面数进行从小到大排序:

awk ‘{++S[$1]} END {for (a in S) print S[a],a}‘ log_file | sort –n

5、查看某一个IP访问了哪些页面:

grep ^111.111.111.111 log_file| awk ‘{print $1,$7}‘

6、去掉搜索引擎统计当天的页面:

awk ‘{print $12,$1}‘ log_file | grep ^\"Mozilla | awk ‘{print $2}‘ |sort | uniq | wc –l

7、查看2009年6月21日14时这一个小时内有多少IP访问:

awk ‘{print $4,$1}‘ log_file | grep 21/Jun/2009:14 | awk ‘{print $2}‘| sort | uniq | wc –l

8.查看访问前十个ip地址

awk ‘{print $1}‘ |sort|uniq -c|sort -nr |head -10 log_file

9.访问次数最多的文件或页面

cat log_file |awk ‘{print $11}‘|sort|uniq -c|sort -nr

10.通过子域名访问次数,依据referer来计算,稍有不准

cat log_file | awk ‘{print $11}‘ | sed -e ‘ s/http:\/\///‘ -e ‘ s/\/.*//‘ | sort | uniq -c | sort -rn | head -20

11. 列出传输大小最大的几个文件

cat log_file |awk ‘($7~/\.php/){print $10 " " $1 " " $4 " " $7}‘|sort -nr|head -100

12.   列出输出大于200000byte(约200kb)的页面以及对应页面发生次数

cat log_file |awk ‘($10 > 200000 && $7~/\.php/){print $7}‘|sort -n|uniq -c|sort -nr|head -100

13. 如果日志最后一列记录的是页面文件传输时间,则有列出到客户端最耗时的页面

cat log_file |awk ‘($7~/\.php/){print $NF " " $1 " " $4 " " $7}‘|sort -nr|head -100

14.   列出最最耗时的页面(超过60秒的)的以及对应页面发生次数

cat log_file |awk ‘($NF > 60 && $7~/\.php/){print $7}‘|sort -n|uniq -c|sort -nr|head -100

15. 列出传输时间超过 30 秒的文件

cat log_file |awk ‘($NF > 30){print $7}‘|sort -n|uniq -c|sort -nr|head -20

16. 列出当前服务器每一进程运行的数量,倒序排

ps -ef | awk -F ‘ ‘ ‘{print $8 " " $9}‘ |sort | uniq -c |sort -nr |head -20

17. 当前WEB服务器中联接次数最多的ip地址

netstat -ntu |awk ‘{print $5}‘ |sort | uniq -c| sort -nr

18. 查看日志中出现100次以上的IP

cat log_file  |cut -d ‘ ‘ -f 1 |sort |uniq -c | awk ‘{if ($1 > 100) print $0}‘|sort -nr |less

19. 查看最近访问量最高的文件

cat log_file |tail -10000|awk ‘{print $7}‘|sort|uniq -c|sort -nr|less

20. 查看日志中访问超过100次的页面

cat log_file | cut -d ‘ ‘ -f 7 | sort |uniq -c |  awk ‘{if ($1 > 100) print $0}‘ | less

21. 统计某url,一天的访问次数

cat log_file | grep ‘12/Aug/2009‘|grep ‘/images/index/e1.gif‘|wc|awk ‘{print $1}‘

22. 前五天的访问次数最多的网页

cat log_file | awk ‘{print $7}‘|uniq -c |sort -n -r|head -20

23. 从日志里查看该ip在干嘛

cat log_file | grep 219.239.157.240 | awk ‘{print $1"\t"$7}‘ | sort | uniq -c | sort -nr | less

24. 列出最最耗时的页面(超过60秒的)

#cat log_file |awk   ‘($NF > 60 && $7~/\.php/){print $7}‘ |sort -n|uniq -c|sort -nr|head -100

25. 网站一天的点击量

cat log_file |grep ‘12/Nov/2011‘ | grep "******.jsp"|wc|awk ‘{print $1}‘|uniq

26. 访问网站的独立IP有多少

cat log_file |grep ‘12/Aug/2011‘ |grep "******"|wc|awk ‘{print $1}‘|uniq

通过日志查看当天ip连接数,过滤重复

cat log_file | grep "20/Oct/2008" | awk ‘{print $2}‘ | sort | uniq -c | sort –nr

27. 用tcpdump嗅探80端口的访问看看谁最高

tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." ‘{print $1"."$2"."$3"."$4}‘ | sort | uniq -c | sort –nr

28. 查看某一时间段的ip连接数

grep "2006:0[7-8]" log_file | awk ‘{print $2}‘ | sort | uniq -c| sort -nr | wc -l

原文地址:https://www.cnblogs.com/mshxuyi/p/9626769.html

时间: 2024-09-29 08:57:35

Linux日志分析常用命令汇总的相关文章

Linux日志分析常用命令

1.查看文件内容 cat -n 显示行号 2.分页显示 more Enter 显示下一行 空格 显示下一页 F 显示下一屏 B 显示上一屏 less /get 查询"get"字符串并高亮显示 3.显示文件尾 tail -f 不退出持续显示 -n 显示文件最后n行 4.显示头文件 head -n 显示文件开始n行 5.内容排序 sort -n 按照数字排序 -r 按照逆序排序 -k 表示排序列 -t 指定分隔符 6.字符统计 wc -l 统计文件中行数 -c 统计文件字节数 -L 查看最

linux vi(vim)常用命令汇总(转)

前言 首先解析一个vim vi是unix/linux下极为普遍的一种文本编辑器,大部分机器上都有vi的各种变种,在不同的机器上常用不同的变种软件,其中vim比较好用也用的比较广泛.vim是Vi Improved的缩写,表示更好的vi.本文就说些比较有用.比较常用的命令,若能熟练运用这些命令,那么会发现编辑文件很大帮助,尤其作为开发人员,能够快速的提高开发效率. 说明 以下的例子中 xxx表示在命令模式下输入xxx并回车 以下的例子中 :xxx表示在扩展模式下输入xxx并回车 小括号中的命令表示相

linux四剑客常用命令汇总

**四剑客常用命令汇总** 1.find find path -option [ -print ] [ -exec -ok command ] {} (find 查找路径 -type f/d -name ..... -size 1k/M -mtime/atime/ctime +-9 文件) find -type/-perm/-empty/ find /tmp -type f -name "*.tmp" -exec rm -rf '{}' \; find / -type f -name

linux 日志查询常用命令

cat tail -f 日 志 文 件 说    明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全相关的日志信息 /var/log/maillog 与邮件相关的日志信息 /var/log/cron 与定时任务相关的日志信息 /var/log/spooler 与UUCP和news设备相关的日志信息 /var/log/boot.log 守护进程启动和停止相关的日志消息 系统: # uname -a

日志分析常用命令

下面这3个命令是非常好用的日志分析命令,以apache的日志文件access_log为例 1访问次数最多的IP TOP10 当网络流量突然持续异常时,很有可能是有恶意访问,最快的解决方式就是找出访问量最多的几个ip,暂时禁止其访问,然后再仔细观察 # cat access_log | cut -f1 -d " " | sort | uniq -c | sort -k 1 -n -r | head -10 2被访问次数最多的URL TOP10 了解哪些Url资源的访问量最大,可以帮助我们

linux运维常用命令汇总

一.线上查询及帮助命令 1.man:查看命令帮助 2.help:查看linux内置命令的帮助 二.文件和目录操作命令: 1.pwd:查看当前目录 2.cd:切换目录 3.tree:以树形结构显示目录下内容 4.mkdir:创建目录 5.touch:创建空文件或改变文件的时间戳属性 6.ls:显示目录下的内容及相关属性信息 7.cp:复制文件或目录 8.mv:移动或重命名文件 9.rm:删除文件或目录 10.rmdir:删除空目录 11.ln:硬链接或软链接 12.readlink:查看符号链接文

linux之GDB常用命令汇总

查看gdb的版本号 (1)rpm -q gdb 会显示是否安装gdb及版本号 (2)gdb --version也可以 breakpoint b main; b 20; 设置断点 breakpoint if break 函数名.编号 if xxxx 在xxx的情况下设置的断点才生效 (xxx 例如:变量= 3) cd cd /home/yongchao/ 改变当前工作目录 clear 光标在正要执行的break点的行,然后打clear 删除停止处的断点 info b info b 查看所有的断点

linux日志查看常用命令

less pafa.log :查看pafa日志 grep  XX pafa.log:关键字查找 grep XX pafa.log|grep XX:多个关键字查找 grep -X 100 pafa.log -A -B -C 后面都跟阿拉伯数字-A是显示匹配后和它后面的n行.-B是显示匹配行和它前面的n行.-C是匹配行和它前后各n行. tail -f pafa.log|grep XX:实时日志关键字查找 ps -ef|grep java :查看java进程 n:重复前一个搜索(与 / 或 ? 有关)

linux vi(vim)常用命令汇总

1 查找 /xxx(?xxx) 表示在整篇文档中搜索匹配xxx的字符串, / 表示向下查找, ? 表示向上查找其中xxx可以是正规表达式,关于正规式就不多说了. 一般来说是区分大小写的, 要想不区分大小写, 那得先输入:set ignorecase 查找到以后, 再输入 n 查找下一个匹配处, 输入 N 反方向查找 *(#) 当光标停留在某个单词上时, 输入这条命令表示查找与该单词匹配的下(上)一个单词 同样, 再输入 n 查找下一个匹配处, 输入 N 反方向查找 g*(g#) 此命令与上条命令