我有下面的代码(请参阅需要了解下面的 awk 命令来查找文件中丢失的行):
awk 'NR==FNR{a[$0];next}(!($0 in a)){print}' 1.txt 2.txt
如果行以=
(ie '$0 ~ /^=/ {print $0}'
) 开头,我可以再添加一个条件来跳过行的比较,并按原样单独打印这些行吗?
答案1
是的,这应该有效:
awk 'NR==FNR{a[$0];next}(!($0 in a) || /^=/){print}' 1.txt 2.txt
这||
是一个 OR 语句,因此这只是在 main 中添加了一个条件if
,检查该行是否以=
.