【发布时间】:2016-03-29 04:12:33
【问题描述】:
我想比较 file1 中的第二列(由空格分隔):
n01443537/n01443537_481.JPEG n01443537
n01629819/n01629819_420.JPEG n01629819
n02883205/n02883205_461.JPEG n02883205
file2 中的第二列(由空格分隔):
val_8447.JPEG n09256479
val_68.JPEG n01443537
val_1054.JPEG n01629819
val_1542.JPEG n02883205
val_8480.JPEG n03089624
如果匹配,我想打印出file2的对应行。
本例中所需的输出:
val_68.JPEG n01443537
val_1054.JPEG n01629819
val_1542.JPEG n02883205
我尝试了以下,但输出文件为空:
awk -F' ' 'NR==FNR{c[$2]++;next};c[$2] > 0' file1.txt file2.txt > file3.txt
也试过这个,但结果是一样的(空输出文件):
awk 'NR==FNR{a[$2];next}$2 in a' file1 file2 > file3.txt
【问题讨论】:
标签: bash awk text-files text-processing