Welcome 微信登录

首页 / 操作系统 / Linux / shell中sed和awk的一些用法和例子

介绍做运维的应该经常用sed和awk这两个工具,但要想把他们用得好绝非易事,需要长时间的积累,本文就粗略的谈谈日常中用到的一些例子。正文1 如何在shell中获取字符串string的长度echo ${#string}
2 替换文件text中一个或多个空格sed -i "s/ +/||/g" test
注释:+意思是之前字符的一个或多个3 删除文件text中“[”和“]”两个字符sed -i -e "s/[//g" -e "s/]//g" text4 文本text的每一列以逗号分隔,现在要删除第六列,然后输出其他列,每一列以空格分隔awk "BEGIN{FS=",";OFS=" "}{$6="";print $0}"5 输出每个用户所占用的CPU百分比top -bn 1 | awk "{if (NR>7) print $0}" | awk "{sum[$2]+=$9}END{for (i in sum) printf "%.2f %s " ,sum[i],i}" | sort -nr6 统计nginx的access.log中每个url的访问数和流量,输出前10名
awk "{print $7" " $10}" access_2010-12-8.log|awk "{S[$1]+=$2;S1[$1]+=1}END{for(i in S) print S[i],S1[i],i}"|sort -rn|head -10以下链接你也可以看看哦在sed命令中引入shell变量 http://www.linuxidc.com/Linux/2014-03/97896.htmLinux下Shell编程——sed命令基本用法 http://www.linuxidc.com/Linux/2013-06/85526.htmUnix文本处理工具之sed  http://www.linuxidc.com/Linux/2013-08/89315.htmsed 高级用法 http://www.linuxidc.com/Linux/2014-09/106961.htmsed命令详解与示例 http://www.linuxidc.com/Linux/2014-11/109325.htmLinux文本处理工具之sed http://www.linuxidc.com/Linux/2015-01/111436.htmShell脚本之AWK文本编辑器语法 http://www.linuxidc.com/Linux/2013-11/92787.htm正则表达式中AWK的学习和使用 http://www.linuxidc.com/Linux/2013-10/91892.htm文本数据处理之AWK 图解 http://www.linuxidc.com/Linux/2013-09/89589.htm如何在Linux中使用awk命令 http://www.linuxidc.com/Linux/2014-10/107542.htm文本分析工具-awk  http://www.linuxidc.com/Linux/2014-12/110939.htm本文永久更新链接地址