awk基本用法
来源:互联网 发布:丹尼尔戴刘易斯 知乎 编辑:程序博客网 时间:2024/06/05 17:09
学习网址1
学习网址2
ls -l >> list.txt
NR(numer row)表示行,读取多个文件时连续计数,1、2。。。
FNR(file number row)表示行,读取多个文件时重新计数1、2.。。1、2、。。
ARGIND(arg index)表示参数索引
ARGV表示参数数组,索引为1、2.。。
pattern条件表示处理某个文件时,FILENAME=="test.txt",FILENAME==ARGV[1] ,ARGIND==1
输出第一列
awk '{print $1}' list.txt
输出第二列
awk '{printf %d\n,$2}' list.txt
输出第二行第一列
awk 'NR==2 {print $1}' list.txt
if语句
awk '{if(NR<=2){print $0}}' list.txt
Awk完整形式
awk 'BEGIN{print"start"} pattern{print} END{print "end"}'
其中BEGIN和END是可选模块, pattern里面每读一行执行一次,BEGIN在加载数据前执行,END在加载数据完成后执行。单引号是为了将awk命令与linux命令区分开。pattern不写时表示任意条件, awk '/^web/{T=$0;next;}{print T":\t"$0;}' test.txt 第一个中括号执行条件为行以web开头,第二个执行为任意条件,但是next会跳过当前行,忽略后面语法,执行下一行
Eg、输出字段数(NF->number of fileds)和行数(NR->numberof rows)
awk 'END{print NF,NR}' //在读入每一行的时,awk会将NR更新为对应的行号
- 提前遍历全文
awk 'BEGIN{while(getline<"file"){x+=$2+$3;i++};y=x/i}{if($2+$3>y)z++}END{print z}' file
拆分
ifconfig
|
awk
'{if(NR==2){split($2,a,":");print a[2]}}'
统计次数
awk '{name[$1]++ }; END {for (count in name) print count,name[count]}' test|sort
取字符前几位
awk脚本形式
eg:求学生平均成绩
zhangsan 80
lisi 81.5
wangwu 93
zhangsan 85
lisi 88
wangwu 97
zhangsan 90
lisi 92
wangwu 88
#!/bin/awk -fBEGIN{print "start"}{a[$1]+=$2b[$1]++}END{ for(i in b){ print i,a[i]/b[i] } print "end"}
执行
awk -f awk_sogou.awk SogouQ.sample
awk -f awk_sogou.awk SogouQ.sample | sort -nk 2 #将输出结果按照第二列进行数字大小排序,不指定n的话会只取一个字符
awk -f awk_sogou.awk SogouQ.sample | sort -k 1.2 #将输出结果按照第一列进行大小排序,-k 1.2表示取第一个字段从第二个字符开始到第一个字段的最后一个字符
awk -f awk_sogou.awk SogouQ.sample | sort -nk 2 <span style="color: rgb(45, 55, 75); font-family: Verdana, Geneva, sans-serif; line-height: 17.98611068725586px;">-t:</span> #-t指定分隔符
来自: http://man.linuxde.net/sort
$0表示整行
输出前3列
ps -aux|grep java|awk '{i=1;while(i<3){printf $i;i=i+1;}print $i}'
- awk基本用法(vbird)
- sed awk 基本用法
- awk基本用法
- awk基本用法
- awk基本用法
- awk基本用法简介
- awk基本用法
- AWK 常见基本用法
- linux AWK命令基本用法
- awk基本用法及举例
- sed和awk的基本用法
- grep、sed和awk基本用法汇总
- awk基本用法及举例(2)
- linux下sed与awk的基本用法
- LINUX 下 find grep sed awk 的常见基本用法
- linux的常用命令和awk的基本用法
- awk用法
- awk用法
- HDFS下载文件报错!
- iOS应用程序内购/内付费(
- Spring @Value用法
- swift之UITableView
- Java包装类和处理对象
- awk基本用法
- 关于图的一些日常
- [翻译]怎样创建一个Xcode插件(part 1)
- MySQL中如何按月统计数据
- 个人工作中,关于linux下文件目录创建问题
- SAP router installation for Linux
- 【iOS】CoreImage原生二维码生成(一)
- C语言(回调函数)
- 娱乐新闻发布 娱乐新闻发布 娱乐影视新闻发布 娱乐门户网频道发布