使用awk命令中的正则表达式(Regular Expression)匹配和for循环来遍历查找列表中的每一个字符串,并通过if条件语句判断特定字符串是否出现在字段中。以下是代码示例:
awk 'BEGIN {
# 定义包含特定字符串的列表
list = "apple,banana,orange"
# 将列表按照逗号分割成数组
split(list,a,",")
}
{
# 遍历每一列
for(i = 1; i <= NF; i++) {
# 遍历列表中的每一个字符串
for(j in a) {
# 判断特定字符串是否出现在当前列中
if($i ~ a[j]) {
print "Found:", $i
}
}
}
}' file.txt
以上代码将在file.txt中搜索包含特定字符串(apple、banana或orange)的任意字段,并将匹配到的字符输出。
上一篇:awk如何处理输入文件?