您的位置:首页 > 运维架构 > Shell

shell awk转成数组

2016-07-04 11:59 591 查看
在编写shell时,需要将awk转换成合适的数组类型:

( `cat $file | awk '{print $1}'`)

awk:

awk BEGIN END

BEGIN后第一个接{}表示在标准输入未开始前执行的操作,可以做些内置设值操作

END后第一个接{}标识在标准输入结束后执行的操作

而独立的{},则表示在每一行标准数据读取时,可以执行的操作,可以用于保存整个数组

如:awk '{a[NR]=$1}' NR会随着每一行的读取,NR的值会递增,而这个操作便能将每行的第一列的数据都保存起来。

一个应用,统计最大最小值

awk '{a[NR]=$1} END{max=0;min=a[1];for(num in a){if(a[num]<min){min=a[num]};if(a[num]>max){max=a[num]}};print "Min:"min,"Max:"max}'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: