在AWK中,可以使用内置的gsub函数来替换记录中的文本,而不使用新的分隔符来更新记录。
下面是一个示例代码,演示了如何使用AWK来替换记录中的文本:
# 假设有一个包含姓名和年龄的输入文件,每行使用逗号分隔
# 我们想要将年龄大于30岁的人的年龄替换为"老年人"
# 使用逗号作为分隔符,将第一个字段存储在name变量中,将第二个字段存储在age变量中
# 如果年龄大于30岁,则使用gsub函数将该记录中的年龄替换为"老年人"
# 最后,使用逗号作为分隔符打印更新后的记录
awk 'BEGIN{FS=","; OFS=","} {name=$1; age=$2; if(age>30) gsub(age, "老年人", $0); print $0}' input.txt
假设input.txt
文件内容如下:
John,25
Tom,35
Mary,40
运行上述代码后,输出将会是:
John,25
Tom,老年人
Mary,老年人
可以看到,年龄大于30的人的年龄已经被成功替换为"老年人"。