6

如何按行中的最后一个数字对文件进行排序?

假设每一行的最后一个字符是一个数字。输入:

facebook.com/pageA,2,11,11
facebook.com/pageB,0,0,20
facebook.com/pageC,0,0,6
facebook.com/pageD,1,22,239

期望的输出:

facebook.com/pageC,0,0,6
facebook.com/pageA,2,11,11
facebook.com/pageB,0,0,20
facebook.com/pageD,1,22,239

帮助??

4

3 回答 3

10

您可以使用sort.

sort -n -t, -k4 INPUT
于 2013-06-14T02:13:03.707 回答
3

如果您的输入文件在每一行中有不同的列,那么您可以将最后一列作为第一列,按它排序,然后将其删除。

awk '{print($NF,$0)}' FS=, OFS=, inputFile | sort -t, -nk1 | cut -f2- -d,
于 2013-06-14T03:49:17.207 回答
2

用于rev反转每一行,然后排序,然后重新反转:

rev < $file | sort | rev
于 2013-06-14T02:21:05.980 回答