我正在尝试对文本文件中的数据进行排序。我想将第一列位置 2 处的数字数据排序到第一列末尾。
例如:
Record Age Price
A7859 15 10
B785 18 10
C696548 11 10
X7675 35 10
Y679 45 10
Z65 89 10
答案1
假设您要对第一列中的数字按数字升序排序:
$ sort -k 1.2,1n file
Record Age Price
Z65 89 10
Y679 45 10
B785 18 10
X7675 35 10
A7859 15 10
C696548 11 10
排序选项-k 1.2,1n
的意思是“使用第一列第二个字符中的数据进行数字排序”。这会按升序对第一列中的数值进行排序。用于-k 1.2,1nr
逆序排序。
,1
该选项的参数中的 停止使用sort
该行的其余部分作为排序键。
要稍微清理一下列的对齐方式,请将结果传递给column -t
:
$ sort -k 1.2,1n file | column -t
Record Age Price
Z65 89 10
Y679 45 10
B785 18 10
X7675 35 10
A7859 15 10
C696548 11 10