0

我在 unix 中的排序命令有问题我有一个包含如下行的文本文件:

de la (-0.167969404167593)
de l (-0.137148984295644)
la commission (0.0922090559997898)
à la (-0.115188946405936)
à l (-0.0936395578796088)
c est (0.130628584805583)

我想根据括号中值的降序对这些句子进行排序我这样做命令:

sort 2fr -t"(" -k2r > 2frsort

但它没有正确排序有什么想法吗?谢谢

4

2 回答 2

0

你在使用 GNUsort吗?如果是这样,-g选项处理指数符号

sort -t '(' -k 2 -g -r

于 2013-03-29T18:47:25.197 回答
0

您可以在第二列上使用数字排序:

$ sort --numeric-sort --field-separator '(' --reverse --key 2 test.dat
c est (0.130628584805583)
la commission (0.0922090559997898)
à l (-0.0936395578796088)
à la (-0.115188946405936)
de l (-0.137148984295644)
de la (-0.167969404167593)
于 2013-03-29T18:08:15.907 回答