嗨,我有两个输入文件。
输入1.txt:
id above
id below
id still
id getting
输入2.txt
id above
value above the sky
id below
value under the chair
我正在尝试执行 awk 命令,但它显示为空。
awk -f find.awk input1.txt input2.txt
我知道我的 awk 有效,因为我输入了 2 个不同的 txt 文件,并且所有输出都是正确且可见的。
不同的 input2.txt 文件之间的区别是......
当我在 Windows 机器上使用记事本时,整个文件变成了一个字符串,而如果你使用任何 txt 编辑器,它会用单独的行格式化。
记事本上的示例 input2.txt。
id above value above the sky id below value under the chair
我不能只通过 id 重新解析这个输入,因为我的真实 txt 文件有更多数据......这是不一致的,所以我不能只搜索字符串或 reg 表达式。
查找.awk
FNR==NR { id[$0]; next }
$0 in id { f=1 }
f
NF==0 { f=0 }
以及为什么我的 awk 不起作用的想法?