我有这个代码:
awk -F' *\\| *' 'FNR==NR {a[$1];next} $2==2 && $4==3 && $5 in a && ($3==11 || $8 in ..)' file1.conf file2
我想添加另一个条件来验证字段$ 8是否存在于值[1,2,3,4,5 ...]的数组中?
我已经使用一个文件检查文件中是否存在$ 5的值,但我不知道如何添加另一个数组以检查数组或文件中是否存在$ 8的值
这是list.txt文件:
1 #error code
2 #submit code
3 #delivery code
.
.
谢谢
答案 0 :(得分:0)
假设您的列表数据位于名为list.txt
的文件中,您可以将awk
命令修改为:
awk -F' *\\| *' -v lf='list.txt' 'BEGIN {
while (getline p < lf) {
sub(/[ #].*$/, "", p);
d[p];
}
close(lf)
}
FNR==NR {
a[$1];next
}
$2==2 && $4==3 && $5 in a && ($3=11 || $8 in d)' file1.conf file2