awk工具

本文详细介绍了awk命令的基础使用方法,包括如何指定字段分隔符、如何使用正则表达式进行匹配、如何实现数值比较及逻辑运算等功能,并提供了多个实用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

awk:

155045_gOBu_3769333.png

awk -F ':' '{print $1}' 文件名字   =把第一段打印出来, $1 表示第一段,1可以根据需求修改,如果想打印全部出来那么 $1 更改为 $0 即可。

155604_Jdu4_3769333.png

不指定分隔符那么会默认空格或者空白字符自己分段打印。

155905_2zGQ_3769333.png

awk 也可以同时打印多段落中间加上 , 号即可。

160139_o2vx_3769333.png

指定去其他符号分割段落,符号用双引号引起来即可。

160457_vTUL_3769333.png

直接匹配需求数据。

160857_sZ6y_3769333.png

awk -F ' : '  '$1 ~ /oo/'  文件名字 =指定匹配第一段带有oo的数据。    $1 ~ =第一段     同样支持正则表达式匹配。

161049_Evdh_3769333.png

awk -F ':' '/root/ {print $1,$3} /test/ {print $1,$3}' test.txt   =匹配第一段和第三段带有root的段,然后在匹配第一段和第三段带有user的段。    (awk同样可以多个表达式一起写)

161941_KZxt_3769333.png

awk -F ':' '/root/user/ {print $0}' test.txt    匹配所有段落带有root或者user的行。 (上面的那种写法更加容易理解)

162342_PHix_3769333.png

awk -F ':' '$3==1000 {print $0}' test.txt   第三段等于0的有哪些。        ==  两个等号才表示等于     一个等于号表示赋值

163728_yg3L_3769333.png

awk -F ':' '$3>=1000 {print $0}' test.txt  第三段大于等于1000的段落有哪些   

163447_FKMi_3769333.png

awk -F ':' '$7!="/sbin/nologin" {print $0}' test.txt   表示第七段不等于 /sbin/nologin 有哪些。  !$ = 0不等于的意思。

163113_nNaA_3769333.png

 

164053_3CUB_3769333.png

awk -F ':' '$3>"5" && $3<"7"' test.txt   $3大于5并且$3小于7 ,  &&=并且。

210809_qpBj_3769333.png

awk -F ':' '$3>1000 || $7=="/bin/bash"' test.txt    $3大于1000或者$7等于/bin/bash     ||=或者的意思

==(两个等于号表示等于,一个等于号表示赋值)

211138_oqzl_3769333.png

0FS 指定print的分隔符,中间可以写需求条件,如果不写条件那么就是全部显示。

213412_Tx8z_3769333.png

awk -F ':' '{print NF":" $0}' test.txt  显示每一行的段号,每一行一共有几段。

213850_LZdq_3769333.png

awk -F ':' '{print NR":" $0}' test.txt      显示行号。

214036_4mlO_3769333.png

NF    NR  同样可以用作判断一个条件是否可行。

214620_bjXv_3769333.png

awk -F ':' '{(tot=tot+$3)}; END {print tot}' test.txt    求第三段所有的和

214917_u6O2_3769333.png

 

awk -F ':' '{if ($1=="root") {print $0}}'      if = 嵌套条件,和需求条件一起写

215546_wqri_3769333.png

 

 

 

 

 

 

 

转载于:https://my.oschina.net/u/3769333/blog/1634857

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值