1、统计某一时间段内所有访问Apache服务器的请求个数
#!/bin/bash
#条件判断$7:$8大于等于16:30,并且小于等于17:30,再用wc统计总个数
awk -F “[/:]” ‘$7”:”$8>=”16:30”’ && $7”:”$8<=”17:30”’ /var/log/httpd/access_log | wc -l
2、统计某一时间段内所有访问Apache服务器的IP地址
#!/bin/bash
#日志文档内第1列是远程主机的IP,在前一个脚本的基础上,把第1列的内容提取出来即可
awk -F “[/:]” ‘$7”:”$8>=”16:30”’ && $7”:”$8<=”17:30”{print $1}’ /var/log/httpd/access_log
3、统计某个远程IP访问了本机Apache的次数
#!/bin/bash
awk ‘{ip[$1]++}END{for (i in ip){print ip[i],i}}’ /var/log/httpd/access_log
4、每周五的03点09分自动执行脚本完成nginx日志切割工作
[root@localhost ~]#vim /usr/local/nginx/logbak.sh
#!/bin/bash
date=date +%Y%m%d
logpath=/usr/local/nginx/logs
mv $logpath/access.log logpath/access−logpath/access-logpath/access−date.log
mv $logpath/error.log logpath/error−logpath/error-logpath/error−date.log
kill -USR1 $(cat $logpath/nginx.pid)
[root@localhost ~]#chmod +x /usr/local/nginx/logbak.sh
[root@localhost ~]#crontab -e #将脚本加入周期任务
09 03 * * 5 /usr/local/nginx/logbak.sh
5、检测mysql服务是否存活
#!/bin/bash
#host为需要检测的mysql主机的IP,user为mysql账户名,passwd为密码
HOST=127.0.0.1
USER=root
PASSWD=com.abc
mysqladmin -h $HOST -u USER−p’USER -p’USER−p’PASSWD’ ping &> /dev/null
if [ $? -eq 0 ];then
echo “mysql is up”
else
echo “mysql is down”
fi