File2
包含ID群集。我想从file2
打印这些群集,其中群集中的所有字符串都在File1
中找到。
通常我会使用grep -wf或类似的,但现在我只想保留file1
中完全匹配的群集,并打印用标题ID
分隔的群集
示例:
文件1:
mmu-mir-344d-2
mmu-mir-344d-1
mmu-mir-202
mmu-mir-486a
mmu-mir-486b
file2的
ID
mmu-mir-344d-2
mmu-mir-344d-1
ID
mmu-mir-202
mmu-mir-7686
ID
mmu-mir-486a
mmu-mir-486b
输出:
ID
mmu-mir-486a
mmu-mir-486b
ID
mmu-mir-344d-2
mmu-mir-344d-1
答案 0 :(得分:1)
这一行应该:
awk 'NR==FNR{a[$0]=7;next}{for(i=1;i<=NF;i++)if($0&&!a[$i])next}
FNR>1{print "ID"$0}' file1 RS="ID" file2