linux awk获得某一列

1、打印文件的第一列(域) : awk '{print linux awk获得某一列1,linux awk获得某一列1 linux awk获得某一列1'

(获取test文件的第4行)

cat test| awk 'NR==4'或cat test|sed -n '4p'直接获取某一行的数据

shell里面的赋值方法有两种,格式为
1) arg=`(命令)`
2) arg=$(命令)

因此,如果想要把某一文件的总行数赋值给变量nlines,可以表达为:
1) nlines=(awk 'END{print NR}' filename)
或者
2) nlines=$(awk 'END{print NR}' filename)

awk练习题
wang 4
cui 3
zhao 4
liu 3
liu 3
chang 5
li 2
1 通过第一个域找出字符长度为4的
2 当第二列值大于3时,创建空白文件,文件名为当前行第一个域linux awk获得某一列1)
3 将文档中 liu 字符串替换为 hong
4 求第二列的和
5 求第二列的平均值
6 求第二列中的最大值
7 将第一列过滤重复后,列出每一项,每一项的出现次数,每一项的大小总和
1、字符串长度
awk 'length(linux awk获得某一列1}'
2、执行系统命令
awk '{if(linux awk获得某一列1)}}'
3、gsub(/r/,"s",域) 在指定域(默认linux awk获得某一列1);print linux awk获得某一列2}END{print a}'
5、列求平均值
df -h | awk '{a+=linux awk获得某一列2;b++}END{print a,a/b}'
6、列求最大值
df -h | awk 'BEGIN{a=0}{if(linux awk获得某一列2 }END{print a}'
7、将第一列过滤重复列出每一项,每一项的出现次数,每一项的大小总和
awk '{a[linux awk获得某一列1]+=$2}END{for(i in a){print i,a[i],b[i]}}'

上一篇:阿里云容器Kubernetes监控(十) - kube-eventer发布Webhook信道支持


下一篇:如何解决Pytorch的GPU driver is too old的问题?