我有以下文本文件,其中包含 [数字,IP 地址] 格式的行,并希望根据数字部分对其进行排序。我尝试使用命令
sort -r -k 1 -t"," Input.txt > Output.txt
但是我似乎不知道如何正确获得所需的输出。如果能得到任何帮助我将不胜感激!
输入文件:
20,159.122.220.29
57,180,128.252.1
6749,182.100.67.59
3379,183.3.202.111
87,195.154.49.74
27,208.109.54.40
3085,218.25.208.92
142,41.223.57.47
实际输出文件:
87,195.154.49.74
6749,182.100.67.59
57,180,128.252.1
3379,183.3.202.111
3085,218.25.208.92
27,208.109.54.40
20,159.122.220.20
142,41.223.57.47
所需输出文件:
6749,182.100.67.59
3379,183.3.202.111
3085,218.25.208.92
142,41.223.57.47
87,195.154.49.74
57,180,128.252.1
27,208.109.54.40
20,159.122.220.20
答案1
添加-g
标志以使用通用数字而不是 ASCII 进行排序。
sort -r -g -k 1 -t"," Input.txt
-n
或-h
也会根据第一个字段中的数字类型起作用。请参阅man sort
了解详情。