我有这些文件名:
demux.16S_For_bc1005--16S_Rev_bc1033.bam
demux.16S_For_bc1005--16S_Rev_bc1044.bam
demux.16S_For_bc1005--16S_Rev_bc1045.bam
demux.16S_For_bc1005--16S_Rev_bc1054.bam
我有这个 csv 文件:
16S_For_bc1005;16S_Rev_bc1033;Pa_32_S2_Rp
16S_For_bc1005;16S_Rev_bc1035;Pa_29_S2_Rp
16S_For_bc1005;16S_Rev_bc1044;Pa_15_S2_Rp
16S_For_bc1005;16S_Rev_bc1045;Pa_13_S2_Rp
16S_For_bc1005;16S_Rev_bc1054;Pa_25_S2_Rp
16S_For_bc1005;16S_Rev_bc1056;Pa_12_S2_Rp
我需要将csv文件的模式(第三列)添加到相应的文件名中,以获得:
demux.16S_For_bc1005--16S_Rev_bc1033.Pa_32_S2_Rp.bam
demux.16S_For_bc1005--16S_Rev_bc1044.Pa_15_S2_Rp.bam
demux.16S_For_bc1005--16S_Rev_bc1045.Pa_13_S2_Rp.bam
demux.16S_For_bc1005--16S_Rev_bc1054.Pa_25_S2_Rp.bam
诀窍是将好的模式与好的文件名相匹配:它基于 csv 的第一列和第二列。 csv 文件的某些行可能与任何文件名不匹配(例如,因为没有文件名
16S_For_bc1005;16S_Rev_bc1035;Pa_29_S2_Rp
)我尝试先处理这个主题https://unix.stackexchange.com/questions/229858/renaming-files-using-list
demux.16S_For_bc1005--16S_Rev_bc1035.bam
或者您只是在寻找 bash 解决方案?