shell练习-awk命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell练习-awk命令相关的知识,希望对你有一定的参考价值。

awk -F ‘:‘  ‘{print $3,$4}‘ 1.txt 

awk -F ‘:‘ ‘OFS=":" {print $3,$4}‘ 1.txt

awk ‘/root|user/‘ 1.txt  匹配root或者user

awk ‘/(oo)+/‘ 1.txt  一或多次oo

awk -F ‘:‘ ‘$1~/r*o/ {print $3}‘ 1.txt 第一段去匹配r*o的,并只打印第三段

awk -F ‘:‘ ‘$1~/root/ {print $1,$3}; $1~/user/ {print $1,$3}‘ 1.txt 分别匹配

awk -F ‘:‘ ‘$1~/root|nobody/ {print $1,$3}‘ 1.txt  或者

条件操作符

awk -F‘:‘ ‘$1=="root"{print $1}‘ 1.txt

awk -F‘:‘  ‘$1=="root" || $7~/nologin/‘ 1.txt 第一段是root或第7段是nologin的

可以用 !~ 表示不匹配 $7!~/nologin/ 第7段不匹配弄login的

awk 位置变量 NR行

awk -F‘:‘ ‘NR<10 {print $5,$1,$7}‘ 1.txt 打印前9行

awk -F‘:‘ ‘{if (NR==10) print $1,$3,$4}‘ 1.txt

awk -F‘:‘ ‘OFS="%" {if (NR==10) print $1,$2}‘ passwd  打印第十行的第一二两段

awk -F‘:‘ ‘{print NF}‘ 1.txt 打印每一行有几段

awk -F‘:‘ ‘OFS="##" {if (NF==7) print $1,$7}‘ passwd     打印是7段的每一行中的第一段和第七段

awk -F‘:‘ ‘{print $NR print $NF }‘ 1.txt

awk -F‘:‘ ‘OFS=":" {$7=$3+$4 print $0‘} 1.txt     $0本行

awk -F‘:‘ ‘{(sum=sum+$3)};END {print sum}‘ 1.txt  循环 (注意单引号的位置)

awk -F: ‘/^root:/{OFS="##";print $1,$3,$6;}‘ passwd


本文出自 “share,open source” 博客,请务必保留此出处http://liqilong2010.blog.51cto.com/3029053/1857120

以上是关于shell练习-awk命令的主要内容,如果未能解决你的问题,请参考以下文章

shell练习--awk统计ip访问量(一条命令)

Linux文本三剑客之一——awk详解——awk看这两篇就够啦~PS:文末有练习,来练练手吧

shell命令三剑客之awk命令详解,cut命令,linux里记录行踪(操作记录)

每天练习50个shell

牛客编程题shell34题(Linux awk,grep命令)

shell中,awk命令的$0是啥意思?