Welcome 微信登录

首页 / 操作系统 / Linux

使用shell脚本分析网站日志统计PV、404、500等数据

使用shell脚本分析网站日志统计PV、404、500等数据

下面的脚本能统计出网站的总访问量,以及404,500出现的次数。统计出来后,我们可以结合监控宝来进行记录,进而可以看出网站访问量是否异常,是否存在攻击,一目了然。还可以根据查看500出现的次数,进而判断网站程序是否出现异常。复制代码 代码如下:#!/bin/bash#purpose:count nginx or apache or other webserver status code using jiankongbao#how to:run the sc...
shell数组操作简明总结

shell数组操作简明总结

数组作为一种特殊的数据结构在任何一种编程语言中都有它的一席之地,当然bash shell也不例外。本文就shell数组来做一个小的总结。在这里只讨论一维数组的情况,关于多维数组(事实上,你得用一维数组的方法来模拟),不涉及。这里包括数组的复制,计算,删除,替换。1.数组的声明:复制代码 代码如下:1)array[key]=value # array[0]=one,array[1]=two2)declare -a array # array被当作数组名3)a...
shell脚本结合iptables防端口扫描的实现

shell脚本结合iptables防端口扫描的实现

网上有现在的防端口工具,如psad、portsentry,但觉得配置有点麻烦,且服务器不想再装一个额外的软件。所以自己就写了个shell脚本实现这个功能。基本思路是:使用iptables的recent模块记录下在60秒钟内扫描超过10个端口的IP,并结合inotify-tools工具实时监控iptables的日志,一旦iptables日志文件有写入新的ip记录,则使用iptables封锁源ip,起到了防止端口扫描的功能。1、iptables规则设置新建脚本...
shell脚本实现的网站日志分析统计(可以统计9种数据)

shell脚本实现的网站日志分析统计(可以统计9种数据)

写了个shell脚本,可以用来统计每天的访问日志,并发送到电子邮箱,方便每天了解网站情况。脚本统计了:1、总访问量2、总带宽3、独立访客量4、访问IP统计5、访问url统计6、来源统计7、404统计8、搜索引擎访问统计(谷歌,百度)9、搜索引擎来源统计(谷歌,百度)复制代码 代码如下:#!/bin/bashlog_path=/home/www.jb51.net/log/access.log.1domain="jb51.net"email="log@jb51...
Linux中使用Shell脚本查看Java线程的CPU使用情况

Linux中使用Shell脚本查看Java线程的CPU使用情况

线上Java应用,在业务高峰期的时候经常出现CPU跑高,需要查看实时的线程占用cpu情况,下面是一个很好用的脚本,可以快速导出每个线程的占用CPU情况,结合jstack日志,排查到具体的线程类名。一、首先获得jvm的进程ID:复制代码 代码如下:ps -ef|grep javatomcat 374 372 1 11:45 ? 00:02:30 jsvc.exec -java-home /usr/java/latest -user tomcat ...
Shell处理带空格的文件名的方法

Shell处理带空格的文件名的方法

现在很多人命名的时候都喜欢用空格,例如“An Introduction.doc”。但是这种命名方式给Linux命令行工具和Shell带来了困扰,因为大多数命令中,都是默认以空格做为值与值之间的分隔符,而不是做为文件名的一部分。看下面的脚本,我们可以了解的更清楚:执行的结果如下:实际上,当前目录的文件只有两个:对于简单的文件名,如上例中,我们也可以通过 for i in *doc 这样简单的方法来获得文件列表。但是对于复杂的环境,如下图,我们如何获得这些列表...
Shell脚本处理浮点数的运算和比较实例

Shell脚本处理浮点数的运算和比较实例

通过top命令看到的进程的CPU、内存的使用率的百分比是一个浮点数,我需要在写脚本时对其进行处理,所以学习了一些,总结如下。其实,Shell(这里是Bash)本身不具备处理浮点计算的能力,但是可以使用“bc”这个高精度的计算器工具来帮助,另外,也可以在Bash中调用“awk”脚本来处理浮点运算。1. 用bc来处理计算(包括整型和浮点计算)bc – An arbitrary precision calculator language(1). 通常在Bash脚...
Shell中的循环语句for、while、until实例讲解

Shell中的循环语句for、while、until实例讲解

在编程语言中,循环语句是最基本的语法之一,在Shell(这里是Bash)中也不例外,再把以前自己写过的相关内容整理一下吧。这里包括for/while/until循环,以及变量自增的语法实例。Shell(以Bash为例)中的循环语句一般有for、while、until这几种,偶尔还有写错语法的时候,这里结合实例来自己总结一下。也为今后使用提供一个快捷的资料获取渠道。一、for循环语句实例1.1 最基本的for循环: (传统的形式,for var in …)复...
Shell脚本获取进程的运行时间

Shell脚本获取进程的运行时间

在我们的系统中,我曾写了一个脚本去定时更新一些repository,但偶尔会遇到问题,比如:git pull之时可能会卡在那里(可能由于某时刻的网络问题),它会阻碍后面的下一次更新。所以我就在想,我今后启动这个脚本时,进行检查,如果上次运行的脚本还没结束,而且过了某个时间阀值,就把它及其子进程给kill掉。然后,我就需要写了一个可以查询某个进程已经运行了多少时间(以second为单位)的脚本。注意:这并不是是指进程消耗的CPU时间,这里是当前时间减去进程启...
<< 151 152 153 154 155 156 157 158 159 160 >>