我遇到了 grep 和 awk 的问题。我认为这是因为我的输入文件包含看起来像代码的文本。
输入文件包含 ID 名称,如下所示:
SNORD115-40
MIR432
RNU6-2
参考文件如下所示:
Ensembl Gene ID HGNC symbol
ENSG00000199537 SNORD115-40
ENSG00000207793 MIR432
ENSG00000266661
ENSG00000243133
ENSG00000207447 RNU6-2
我想将源文件中的 ID 名称与参考文件匹配并打印出相应的 ensg ID 号,以便输出文件如下所示:
ENSG00000199537 SNORD115-40
ENSG00000207793 MIR432
ENSG00000207447 RNU6-2
我试过这个循环:
exec < source.file
while read line
do
grep -w $line reference.file > outputfile
done
我也尝试过使用 awk 来处理参考文件
awk 'NF == 2 {print $0}' reference file
awk 'NF >2 {print $0}' reference file
但我只得到一个 grep 的 ID。
任何建议或更简单的方法都会很棒。