如何使用排序命令对这些数字进行排序。
10
11
12
1
13
14
15
16
17
18
19
20
21
2
22
3
4
5
6
7
8
9
X
Y
Run Code Online (Sandbox Code Playgroud)
Kus*_*nda 64
正如@terdon 所注意到的,包含X
和Y
以及数字从 1 到 22 的事实将其识别为可能的人类染色体列表(这就是他说染色体M
(线粒体)可能丢失的原因)。
要对数字列表进行排序,通常会使用sort -n
:
$ sort -n -o list.sorted list
Run Code Online (Sandbox Code Playgroud)
wherelist
是未排序列表,list.sorted
并将是结果排序列表。
使用-n
,sort
将对其输入执行数字排序。然而,由于一些输入不是数字,结果可能不是预期的;X
并且Y
将出现在排序列表中的第一个,而不是最后一个(性染色体通常列在 22 号染色体之后)。
但是,如果您使用sort -V
(用于“版本排序”),您实际上会得到您想要的:
$ sort -V -o list.sorted list
$ cat list.sorted
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
X
Y
Run Code Online (Sandbox Code Playgroud)
如果您确实添加M
,这可能仍然不起作用,因为它会在之前X
而不是在最后排序(我相信它通常是如何呈现的)。
归档时间: |
|
查看次数: |
66187 次 |
最近记录: |