Shell 将字母数字列和数字列一起排序
我有一个文件,其中我需要对E索引进行排序,然后再对I索引进行排序,这样文件,我有很多这样的索引,不仅仅是下面提到的索引:Shell 将字母数字列和数字列一起排序,shell,sorting,Shell,Sorting,我有一个文件,其中我需要对E索引进行排序,然后再对I索引进行排序,这样文件,我有很多这样的索引,不仅仅是下面提到的索引: **chr3 148813677 148815677 ENSG00000071794:I1 -** chr3 148804104 148804291 ENSG00000071794:E1 - chr3 148804291 148804292 ENSG00000071794:E1 - chr3 148804292 14880
**chr3 148813677 148815677 ENSG00000071794:I1 -**
chr3 148804104 148804291 ENSG00000071794:E1 -
chr3 148804291 148804292 ENSG00000071794:E1 -
chr3 148804292 148804309 ENSG00000071794:E1 -
chr3 148804309 148804317 ENSG00000071794:E1 -
chr3 148804317 148804341 ENSG00000071794:E1 -
chr3 148802469 148802676 ENSG00000071794:E2 -
chr3 148801419 148801522 ENSG00000071794:E3 -
chr3 148793668 148793834 ENSG00000071794:E4 -
chr3 148792002 148792135 ENSG00000071794:E5 -
chr3 148791012 148791109 ENSG00000071794:E6 -
chr3 148789370 148789444 ENSG00000071794:E7 -
chr3 148802677 148804103 ENSG00000071794:I1 -
chr3 148801523 148802468 ENSG00000071794:I2 -
chr3 148793835 148801418 ENSG00000071794:I3 -
chr3 148792136 148793667 ENSG00000071794:I4 -
chr3 148791110 148792001 ENSG00000071794:I5 -
chr3 148789445 148791011 ENSG00000071794:I6 -
chr3 148789231 148789369 ENSG00000071794:I7 -
变成
chr3 148789231 148789369 ENSG00000071794:I7 -
chr3 148789370 148789444 ENSG00000071794:E7 -
chr3 148789445 148791011 ENSG00000071794:I6 -
chr3 148791012 148791109 ENSG00000071794:E6 -
chr3 148791110 148792001 ENSG00000071794:I5 -
chr3 148792002 148792135 ENSG00000071794:E5 -
chr3 148792136 148793667 ENSG00000071794:I4 -
chr3 148793668 148793834 ENSG00000071794:E4 -
chr3 148793835 148801418 ENSG00000071794:I3 -
chr3 148801419 148801522 ENSG00000071794:E3 -
chr3 148801523 148802468 ENSG00000071794:I2 -
chr3 148802469 148802676 ENSG00000071794:E2 -
chr3 148802677 148804103 ENSG00000071794:I1 -
chr3 148802677 148804103 ENSG00000071794:I1 -
chr3 148804104 148804291 ENSG00000071794:E1 -
chr3 148804291 148804292 ENSG00000071794:E1 -
chr3 148804292 148804309 ENSG00000071794:E1 -
chr3 148804309 148804317 ENSG00000071794:E1 -
chr3 148804317 148804341 ENSG00000071794:E1 -
通过删除每行第2列和第3列之间不连续的任何重复ID(在本例中为第一行粗体)。简言之,我想根据ID对行进行排序,尤其是“:”之后的所有内容,以及第2列和第3列中的位置
$ sort -k 4,3 my_file
chr3 148789231 148789369 ENSG00000071794:I7 -
chr3 148789370 148789444 ENSG00000071794:E7 -
chr3 148789445 148791011 ENSG00000071794:I6 -
chr3 148791012 148791109 ENSG00000071794:E6 -
chr3 148791110 148792001 ENSG00000071794:I5 -
chr3 148792002 148792135 ENSG00000071794:E5 -
chr3 148792136 148793667 ENSG00000071794:I4 -
chr3 148793668 148793834 ENSG00000071794:E4 -
chr3 148793835 148801418 ENSG00000071794:I3 -
chr3 148801419 148801522 ENSG00000071794:E3 -
chr3 148801523 148802468 ENSG00000071794:I2 -
chr3 148802469 148802676 ENSG00000071794:E2 -
chr3 148802677 148804103 ENSG00000071794:I1 -
chr3 148804104 148804291 ENSG00000071794:E1 -
chr3 148804291 148804292 ENSG00000071794:E1 -
chr3 148804292 148804309 ENSG00000071794:E1 -
chr3 148804309 148804317 ENSG00000071794:E1 -
chr3 148804317 148804341 ENSG00000071794:E1 -