- 浏览: 2538985 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (676)
- linux运维 (157)
- php (65)
- mysql (78)
- nginx (27)
- apche (18)
- framework (6)
- windows (9)
- IDE工具 (23)
- struts2 (7)
- java (13)
- 移动互联网 (14)
- memcache redis (23)
- shell基础/命令/语法 (37)
- shell (50)
- puppet (4)
- C (11)
- python (9)
- 产品经理 (27)
- Sphinx (4)
- svn (12)
- 设计构建 (12)
- 项目管理 (44)
- SEO (1)
- 网站架构 (26)
- 审时度势 (42)
- 网络 (14)
- 激发事业[书&视频] (81)
- 其它 (12)
- 摄影 (8)
- android (21)
最新评论
-
zhongmin2012:
原文的书在哪里
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
renzhengzhi:
你好,请问个问题,从master同步数据到slave的时候,s ...
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
ibc789:
你好,看了你的文章,我想请教个问题, 我在用 redis的时候 ...
redis 的两种持久化方式及原理 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器
#!/bin/bash a=$1 ##### ================pmd log_xml="/var/www/html/yii/build/logs/pmd.xml" export_html="/var/www/html/yii/build/logs/shell_email.html" #多少报错文件 file_num=$(awk '{if($1~/<file/) print $2}' $log_xml | awk -F \" '{print $2}' |wc -l) #多少message #mess_num=$(awk -F \" '{if($1~/<violation/) print $2,$6,$8}' /var/www/html/yii/build/logs/pmd.xml |wc -l) mess_num=$(awk '/<violation/{line++}END{print line}' $log_xml ) #详细列表 rs="<table border=\"0\" cellpadding=\"0\" width=\"100%\"><tr><td height=\"22\" class=\"bg1\" colspan=\"4\"><p style=\"color:#FFFFFF\"><strong>PMD Result (files:$file_num messages:$mess_num)</strong></p></td></tr><tr><td height=\"22\" bgcolor=\"#4040FF\">No</td><td height=\"22\" bgcolor=\"#4040FF\">Code num</td><td height=\"22\" bgcolor=\"#4040FF\">Message</td><td height=\"22\" bgcolor=\"#4040FF\">File</td></tr>" #rs2=$(awk -F \" '/<file/{a=$2}/\<violation/{print "<tr><td>",i++,"</td><td>","<tr><td>",$2,"</td><td>",$8,"</td><td>",a,"</td></tr>"}' $log_xml |grep -v "<tr><td></td><td>") rs2=$(awk -F \" '/<file/{a=$2}/<violation/{print "<tr><td>",++i,"</td><td>",$2,"</td><td>",$8,"</td><td>",a,"</td></tr>"}' $log_xml ) #IFS_old=$IFS #IFS=$'\n' #for loop in $aa #do #rs2="$rs2 <tr><td>$loop</td></tr>" #done echo "$rs $rs2</table><br><br>" > $export_html #echo "$rs $rs2</table>" > /var/www/html/shell_email.html #IFS=$IFS_old ##### ================checkstyle log_xml="/var/www/html/yii/build/logs/checkstyle.xml" #多少报错文件 file_num=$(awk '{if($1~/<file/) print $2}' $log_xml | awk -F \" '{print $2}' |wc -l) #多少message #mess_num=$(awk -F \" '{if($1~/<error/) print $6,$2,$8}' /var/www/html/yii/build/logs/checkstyle.xml |wc -l) mess_num=$(awk '/<error/{line++}END{print line}' $log_xml) #多少error mess_num_error=$(awk '/severity=\"error\"/{line++}END{print line}' $log_xml) #多少warnings mess_num_warnings=$(awk '/severity=\"warning\"/{line++}END{print line}' $log_xml) #详细列表 rs="<table border=\"0\" cellpadding=\"0\" width=\"100%\"><tr><td height=\"22\" class=\"bg1\" colspan=\"5\"><p style=\"color:#FFFFFF\"><strong>Checkstyle Result (files:$file_num messages:$mess_num error:$mess_num_error warnings:$mess_num_warnings)</strong></p></td></tr><tr><td height=\"22\" bgcolor=\"#4040FF\">No</td><td height=\"22\" bgcolor=\"#4040FF\">Type</td><td height=\"22\" bgcolor=\"#4040FF\">line</td><td height=\"22\" bgcolor=\"#4040FF\">Message</td><td height=\"22\" bgcolor=\"#4040FF\">File</td></tr>" #rs2=$(awk -F \" '/<file/{a=$2} /<error/{print "<tr><td>",++i,"</td><td>",$6,"</td><td>",$2,"</td><td>",$8,"</td><td>",a,"</td></tr>"}' $log_xml | grep -v "<tr><td></td><td></td><td>") rs2=$(awk -F \" '/<file/{a=$2}/<error/{print "<tr><td>",++i,"</td><td>",$6,"</td><td>",$2,"</td><td>",$8,"</td><td>",a,"</td></tr>"}' $log_xml ) #IFS_old=$IFS #IFS=$'\n' #for loop in $aa #do #rs2="$rs2 <tr><td>$loop</td></tr>" #done echo "$rs $rs2</table><br><br>" >> $export_html #echo "$rs $rs2</table>" > /var/www/html/shell_email.html #IFS=$IFS_old ##### ================jslint log_xml="/var/www/html/jslint/out/data/log.xml" #多少报错文件 file_num=$(awk -F \" '{if($1~/<Violation/) print $8}' $log_xml | grep -v "js_all.js" | uniq |wc -l) #多少message #mess_num=$(awk -F \" '{if($1~/<Violation/) print $2,$6,$8,$9}' /var/www/html/jslint/out/data/log.xml | grep -v "js_all.js" |wc -l) mess_num=$(awk '/<Violation/{line++}END{print line}' $log_xml | grep -v "js_all.js") #详细列表 rs="<table border=\"0\" cellpadding=\"0\" width=\"100%\"><tr><td height=\"22\" class=\"bg1\" colspan=\"6\"><p style=\"color:#FFFFFF\"><strong>JSlint Result (files:$file_num messages:$mess_num)</strong></p></td></tr><tr><td height=\"22\" bgcolor=\"#4040FF\">No</td><td height=\"22\" bgcolor=\"#4040FF\">type</td><td height=\"22\" bgcolor=\"#4040FF\">line</td><td height=\"22\" bgcolor=\"#4040FF\">reason</td><td height=\"22\" bgcolor=\"#4040FF\">File</td><td height=\"22\" bgcolor=\"#4040FF\">code</td></tr>" #rs2=$(awk -F \" '{if($1~/<Violation/) print "<tr><td>"$4,"</td><td>",$6,"</td><td>",$9,"</td><td>",$8,"</td></tr>"}' /var/www/html/jslint/out/data/log.xml |grep -v "<tr><td></td><td>" | grep -v "js_all.js") rs2=$(awk -F'"' '/Evidence/{gsub(/\/\/.*/,"",$2);gsub(/_/,"/",$8);sub(/>/,"",$9);sub(/<\/Violation>/,"",$9);sub(/\/var\/www\/html\//,"",$8);print "<tr><td>",++i,"</td><td>",$4,"</td><td>",$6,"</td><td>",$9,"</td><td>",$8,"</td><td>",$2"</td></tr>"}' $log_xml ) #IFS_old=$IFS #IFS=$'\n' #for loop in $aa #do #rs2="$rs2 <tr><td>$loop</td></tr>" #done echo "$rs $rs2</table>" >> $export_html ##### ================gjslint log_xml="/tmp/gjslint.log" /bin/touch $log_xml if [[ $a = gjslint ]] ;then /usr/bin/gjslint -r /var/www/html/yii/blog/www/js/ > $log_xml fi #多少报错文件 file_num=$(awk '/-----/{line++}END{print line}' $log_xml) #多少message mess_num=$(awk '/Line/{line++}END{print line}' $log_xml ) #详细列表 rs="<table border=\"0\" cellpadding=\"0\" width=\"100%\"><tr><td height=\"22\" class=\"bg1\" colspan=\"3\"><p style=\"color:#FFFFFF\"><strong>gjslint Result (files:$file_num messages:$mess_num)</strong></p></td></tr><tr><td height=\"22\" bgcolor=\"#4040FF\">No</td><td height=\"22\" bgcolor=\"#4040FF\">File</td><td height=\"22\" bgcolor=\"#4040FF\">Message</td></tr>" rs2=$( awk -F \: '/-----/{gsub(/-----/,"",$2);gsub(/\/var\/www\/html\//,"",$2);a=$2} /Line/{print "<tr><td>",++i,"</td><td>",a,"</td><td>",$0,"</td></tr>"}' $log_xml ) echo "$rs $rs2</table><br><br>" >> $export_html
发表评论
-
设置sudo为不需要密码
2015-04-17 09:04 10510有时候我们只需要执 ... -
haproxy 安装配置和负载实例
2015-03-27 11:49 11531一、环境说明实验环境 OS CentOS5.4 192.1 ... -
/dev/mapper/VolGroup00-LogVol00 100% 如何处理
2015-03-03 10:51 8209服务器磁盘跑满了, 命令查看 如下 [root@lo ... -
Tsar开源:淘宝内部大量使用的系统监控工具
2014-08-07 09:51 971Tsar是淘宝的一个用来收集服务器系统和应用信息的采集报告 ... -
Linux运维常用命令 (转载)
2013-01-31 10:23 25241 删除0字节文件find-type f - ... -
[汇总]shell笔试
2013-01-24 17:32 3363http://president.blog.51cto.co ... -
linux恢复 rm -rf 删除的文件:extundelete
2013-01-24 15:47 8910http://blog.csdn.net/pang6013 ... -
网站排障分析常用的命令
2013-01-21 18:17 1397------------------------------- ... -
迁移vmware服务器后Device eth0 does not seem to be present
2013-01-21 10:58 2250用VMware 安装 linux 6.0 ... -
检测 mysql 的sleep进程数
2013-01-04 14:13 1661#!/bin/sh 注:这个脚 ... -
LoadRunner如何监控Linux系统资源 : rpc.rstatd
2012-12-17 14:49 10294一 简述:LoadRunner监控Linux资源时弹出如下错误 ... -
僵尸Z进程和D进程
2012-12-10 16:47 13146-------------- 1 关于ZOMBIE进 ... -
Unix操作系统硬链接与符号链接的区别
2012-12-10 16:08 2021Unix操作系统有很多值得 ... -
nagios配置参数详解
2012-12-04 14:12 9440# Nagios return codes#定 ... -
nagios自定义监控nginx php和ip_conn
2012-12-03 17:57 3169自定义ip_conn.sh :http://zhume ... -
【汇总】shell show收藏
2012-11-29 14:03 1268================== shell从文本取对应的 ... -
Kickstart+PXE+DHCP+TFTP+NFS自动安装Centos5
2012-11-29 11:34 1602http://5ydycm.blog.51cto.com/11 ... -
haproxy+keepalived高可用负载均衡(七层)
2012-11-29 10:36 4006HAproxy是一款基于TCP( ... -
LVS+Keepalived
2012-11-29 10:10 1734http://www.linuxvirtualserver.o ... -
haproxy & LVS*(keepalived和heartbeat) & ng的比较
2012-11-29 10:04 7589http://network.51cto.com/art/ ...
相关推荐
"巧用AWK处理二进制数据文件" AWK是Unix、Linux中处理文本的好工具,可以对复杂的文本文件进行整理,提取其中的全部或者部分数据,按照需要的格式予以显示。但是,AWK的强大功能只针对纯文本文件,对于带有很多不可...
在Shell脚本编程中,`awk`是一种强大的文本分析工具,尤其在处理文件时非常有用。数组是`awk`中的一个重要概念,它允许我们存储和操作一组相关数据。本篇文章将详细讲解如何使用`awk`数组来处理两个文件,以及在不同...
### AWK 文件处理总结 #### 一、AWK 入门篇 AWK 是一种强大的文本处理工具,常用于Linux/Unix环境下。它允许用户通过简单的脚本语言来进行复杂的文本处理任务。 **基本命令格式**: ```bash awk 'pattern { action...
分析.log文件通常需要专门的工具或编程语言,例如使用grep、awk、sed等Linux命令行工具,或者通过Python、Java、R等编程语言编写脚本。这些工具可以帮助我们提取特定信息,如查找特定IP的访问记录、统计404错误、...
用awk处理两个文件的方法:特定域的合并、替换等
AWK是一种强大的文本分析语言,非常适合处理结构化的文本文件。在这个场景中,自编的AWK脚本被设计来解析NS2的TRACE文件,提取关于网络性能的关键指标。这些指标可能包括: 1. **吞吐量(Throughput)**:衡量网络...
这篇文章将介绍如何使用 awk 实现该功能,并提供了一个示例 awk 脚本来合并多个文件的结果列。 在 NS 模拟结果中,经常需要对多组参数的结果进行比较来鉴别性能的优劣。例如,在 NS 模拟结果中,可能会出现多个网络...
awk可以从标准输入、文件或者其他命令的输出中获取数据,并通过自定义函数和动态正则表达式等功能,支持复杂的文本处理逻辑。 awk处理文本和数据的基本原理是逐行扫描文件,从文件的第一行开始,直到最后一行。它...
### Unix Shell Awk 修改Ini 文件的脚本 在Unix环境下,对配置文件(尤其是INI格式的文件)进行处理是一项常见的需求。...虽然脚本相对简单,但它为理解和应用Unix Shell和Awk处理复杂文本文件提供了很好的示例。
根据提供的文件标题、描述、标签以及部分内容,我们可以深入探讨AWK这一强大的文本处理工具的用法及特性。AWK是一种编程语言,专为文本处理设计,尤其适合在Linux或Unix环境中进行数据处理与分析。 ### AWK命令示例...
生成awk测试文件的shell脚本文件,文件共有两个参数(可全部留空),第一个参数是生成的新文件名称,第二个参数是key值名称,也就是内部的重复循环部分的字符串
在IT行业中,日志分析是一项至关重要的任务...总的来说,通过使用Java的多线程能力和自定义规则,我们可以构建一个高效且灵活的Nginx Access Log分析器,超越传统的AWK解决方案,为IT运维人员提供强大的日志处理工具。
提取leach图像的awk文件提取leach图像的awk文件提取leach图像的awk文件
awk 的主要用途是处理文本文件,提取和处理数据,生成报表等。下面是一份 awk 教程,从基础知识到高级应用,涵盖了 awk 的基本概念、语法、函数和应用实例。 awk 基础知识 awk 的基本结构是 pattern{action},其中...
1. **日志文件分析**: awk经常用于分析和处理大量的日志文件,帮助快速查找特定的信息或统计关键数据。 2. **配置文件处理**: 对于需要解析和修改的配置文件,awk能够轻松实现自动化处理。 3. **文本数据处理**: 如...
简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。 awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。 awk其名称得...
awk是Linux/Unix环境中强大的文本分析工具,它允许用户通过指定模式来处理和操作文本文件。这个"awk思维导图.jpeg单文件"很显然是为了帮助初学者更好地理解和掌握awk命令的工作原理及其应用。思维导图通常以图形化的...
awk是一种强大的文本分析工具,它允许用户通过模式匹配和处理来操作文本文件。在Oracle社区中,开发者和DBA们经常利用awk的强大功能来解析和理解复杂的trace文件,以便快速定位问题。"ass109.awk" 就是这样一款专门...