Linux常用基本命令:三剑客命令之-awk模式用法(1)

本文详细介绍了awk命令中模式匹配的基本用法,包括空模式、使用内置变量NF进行匹配及关系运算符的应用等,并通过具体示例展示了如何利用这些模式来处理文本文件。

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

再次回顾一下,awk基本语法格式:

awk [options] 'Pattern {Action}' file1 file2 ···

之前的文章有讲过两种Pattern(BEGIN, END),本文,再次探讨其他的pattern(模式)用法。

模式是什么? 模式是一种匹配条件,满足条件,就执行后面的动作。

1,没有任何pattern的用法,称之为空模式

ghostwu@dev:~/linux/awk$ awk '{print}' ghostwu.txt 
ghostwu 20 man
zhangsan 22
lisi

2,通过内置变量NF, 打印列等于3的行

ghostwu@dev:~/linux/awk$ cat ghostwu.txt 
ghostwu 20 man
zhangsan 22
lisi
ghostwu@dev:~/linux/awk$ awk 'NF==3{print}' ghostwu.txt 
ghostwu 20 man

 3,也可以通过关系运算符,关系运算符,跟大多数编程语言类似:

ghostwu@dev:~/linux/awk$ cat ghostwu.txt 
ghostwu 20 man
zhangsan 22
lisi
ghostwu@dev:~/linux/awk$ awk '$1=="ghostwu"{print}' ghostwu.txt 
ghostwu 20 man
ghostwu@dev:~/linux/awk$ awk 'NF>1"{print}"' ghostwu.txt 
ghostwu 20 man
zhangsan 22

4,之前介绍的BEGIN, END模式

ghostwu@dev:~/linux/awk$ awk 'BEGIN{print "姓名", "年龄", "性别"} {print $1, $2, $3} END{print "包青天", 200, "man"}' ghostwu.txt 
姓名 年龄 性别
ghostwu 20 man
zhangsan 22 
lisi  
包青天 200 man

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值