sed和awk常用方法
来源:互联网 发布:淘宝美工最低要求 编辑:程序博客网 时间:2024/06/06 15:54
sed和awk是比较基础的类Unix系统中批量处理文本的好东西。sed负责做行的编辑,awk负责做列编辑。这里将说一点这方面的知识。需要明白的一点就是他们的处理都是按照行来做的处理。
sed
命令格式
sed [options] 'command' file(s) sed [options] -f scriptfile file(s)
基本的命令格式:
[address[,address]][!]command[agruments]
选项
常用命令
sed实例
参考
awk
命令格式
awk [-F field-separator] 'commands' input-file(s)
最基本用法
$ ps aux | awk '{print $2}'
这样将会打印出当前在运行的进程的编号。如果你想在首部尾部添加自己的打印
$ ps aux | awk 'BEGIN {print "this is head"} {print $2} END {print "this is tail"}'
在awk中内置的变量
在最后实例里面计算平局值的时候就使用了NR。
printf语法
awk -F ':' '{printf("filename:%10s,linenumber:%s,columns:%s,linecontent:%s\n",FILENAME,NR,NF,$0)}' /etc/passwd
awk运算符
在处理文本的时候可以做一些简单的运算
运算符
= += -= = /= %= ^= *=
逻辑
|| 逻辑或
&& 逻辑与
~ ~! 匹配正则表达式和不匹配正则表达式
< <= > >= != == 关系运算符
数学计算
- 加,减
- / & 乘,除与求余
- ! 一元加,减和逻辑非
^ * 求幂
++ – 增加或减少,作为前缀或后缀
- ! 一元加,减和逻辑非
实例
计算最大值、合计、平均值
参考
在awk里面执行分为两个单元,每行处理的时候在前面那个括号里执行。END之后{}中的内容就是用于做
$ cat test.log0 0 147.0860 10 141.2690 20 100000 30 2805.220 40 152.0030 50 144.7620 60 144.926
最大值
cat test.log | awk '{if(m<$3) m=$3} END{print m}'{ if(m<$3) m=$3}END { print m}
合计
cat test.log | awk '{m+=$3} END{print m}'{ m+=$3}END { print m;}
平均值
cat test.log | awk '{m+=$3} END{print m}'{ m+=$3}END { print m/NR;}
0 0
- sed和awk常用方法
- 常用awk和sed
- awk 以及 sed 的一下常用方法
- sed和awk的常用实例
- sed和awk的常用实例
- sed和awk简介
- sed和awk
- sed和awk简介
- sed和awk简介
- sed和awk简介
- sed 和 awk
- Sed和Awk简介
- sed和awk简介
- sed 和 awk
- sed和awk编程
- sed 和 awk命令
- sed和awk
- grep、sed和awk
- gcc和g++的区别和联系
- JavaSE基础(五)
- Android--日期对话框和时间对话框
- 算法基础知识科普:8大搜索算法之二分搜索
- hdu2031-进制转换问题 vector容器
- sed和awk常用方法
- mysql 主键,外键,唯一键,索引的区别
- Python案例-网络编程-进程池
- Cordova
- Android Studio导入项目gradle报错,解决方案
- 知道这些,才能搞定线下活动直播
- redis 命令
- HDU5729Rigid Frameworks
- linux的文件系统和虚拟文件系统(VFS)