我在文件夾中有一些多個文件我想縮短名稱。以下是輸入文件在unix中重命名文件夾中的多個文件
輸入
S_12_O_319_K27ac_S12818.sorted.bam
S_12_O_319_K27me3_S12815.sorted.bam
S_12_O_319_K4me1_S12816.sorted.bam
S_12_O_319_K4me3_S12817.sorted.bam
S_14_AS_11_K27ac_S12843.sorted.bam
S_14_AS_11_K27me3_S12840.sorted.bam
S_14_AS_11_K4me1_S12841.sorted.bam
S_14_AS_11_K4me3_S12842.sorted.bam
S_12_O_319_K27ac_S12818.sorted.bam.bai
S_12_O_319_K27me3_S12815.sorted.bam.bai
S_12_O_319_K4me1_S12816.sorted.bam.bai
S_12_O_319_K4me3_S12817.sorted.bam.bai
S_14_AS_11_K27ac_S12843.sorted.bam.bai
S_14_AS_11_K27me3_S12840.sorted.bam.bai
S_14_AS_11_K4me1_S12841.sorted.bam.bai
S_14_AS_11_K4me3_S12842.sorted.bam.bai
輸出
S_12_O_319_K27ac.bam
S_12_O_319_K27me3.bam
S_12_O_319_K4me1.bam
S_12_O_319_K4me3.bam
S_14_AS_11_K27ac.bam
S_14_AS_11_K27me3.bam
S_14_AS_11_K4me1.bam
S_14_AS_11_K4me3.bam
S_12_O_319_K27ac.bam.bai
S_12_O_319_K27me3.bam.bai
S_12_O_319_K4me1.bam.bai
S_12_O_319_K4me3.bam.bai
S_14_AS_11_K27ac.bam.bai
S_14_AS_11_K27me3.bam.bai
S_14_AS_11_K4me1.bam.bai
S_14_AS_11_K4me3.bam.bai
請注意,我的文件有兩個不同的擴展,一個是* .bam另一個是* .bam.bai。我想立刻重新命名它們以縮短名稱。從中刪除部分_S12843.sorted
。請注意,這是第5個下劃線,而_S12843
後面的數字對於不同的文件是不同的。只有類似的模式是字符串sorted
。所以想截斷整個部分來縮短名稱。我怎樣才能用bash或者重命名或者sed來實現。任何幫助,將不勝感激。我能夠刪除字符串與排序但不是數字。
[批量使用bash重命名]可能的複製(http://stackoverflow.com/questions/602706/batch-renaming-with-bash) – n00dl3