0

文件 A(制表符分隔,10 列):

chrI DBVPG6765 基因 7249 9030。- 。ID=01G00030;名称= YAL067W
chrI DBVPG6765 mRNA 7249 9030。- 。ID=01T00030.1;父母=01G00030
chrI DBVPG6765 外显子 7249 9030。- 。ID=01T00030.1.exon.1;父级=01T00030.1
chrI DBVPG6765 CDS 7249 9030。- 。ID=01T00030.1.CDS.1;父母=01T00030.1
chrI DBVPG6765 基因 11586 11945 。- 。ID=01G00040;名称= YAL065C
chrI DBVPG6765 mRNA 11586 11945。- 。ID=01T00040.1;父母=01G00040
chrI DBVPG6765 外显子 11586 11945。- 。ID=01T00040.1.exon.1;父级=01T00040.1
chrI DBVPG6765 CDS 11586 11945。- 。ID=01T00040.1.CDS.1;父级=01T00040.1

文件 B(制表符分隔,2 列):

YAL001C TFC3
YAL002W VPS8
YAL003W EFB1
YAL005C SSA1
YAL007C ERP2
YAL008W FUN14
YAL009W SPO7 YAL010C
MDM10 YAL011W
SWC3
YAL012W CYS3
YAL013W DEP1
...
YAL067W SEO1
YAL065W
YAL066C
... YAL066 YAL

我应该得到的格式是:

chrI DBVPG6765 基因 7249 9030。- 。ID=01G00030;名称= SEO1
chrI DBVPG6765 mRNA 7249 9030。- 。ID=01T00030.1;父母=01G00030
chrI DBVPG6765 外显子 7249 9030。- 。ID=01T00030.1.exon.1;父级=01T00030.1
chrI DBVPG6765 CDS 7249 9030。- 。ID=01T00030.1.CDS.1;父母=01T00030.1
chrI DBVPG6765 基因 11586 11945 。- 。ID=01G00040;名称= YAL065C
chrI DBVPG6765 mRNA 11586 11945。- 。ID=01T00040.1;父母=01G00040
chrI DBVPG6765 外显子 11586 11945。- 。ID=01T00040.1.exon.1;父级=01T00040.1
chrI DBVPG6765 CDS 11586 11945。- 。ID=01T00040.1.CDS.1;父级=01T00040.1


ID=DBVPG6765_01G00030;Name=YAL067C 是文件 A 中的第 10 列。脚本/单行程序应在文件 B 中查找 YAL067W,并将 YALO67W 替换为文件 B 的相应第二列(本例中为 SEO1)。

由于文件 B 中的基因顺序与文件 A 中的行号不同,因此 awk 'NR==FNR ... 不起作用。

有人对我应该如何进行此操作有一些建议或小脚本吗?我应该提到我对脚本/编程很陌生。

4

0 回答 0