我使用了grep -Eo '[0-9]{1,}kg' *.dat
来过滤带有*kg
的内容。现在,我试图按升序对它们进行排序。我从grep的输出是:
blue_whale.dat:240kg
crocodile.dat:5kg
elephant.dat:6kg
giraffe.dat:15kg
hippopotamus.dat:4kg
humpback_whale.dat:5kg
ostrich.dat:1kg
sea_turtle.dat:10kg
我尝试使用sort -n
。但是排序不起作用。
编辑:
我有一堆文件,说明每只动物的体重和长度。我过滤了每只动物的体重。这部分很简单。然后我想按我认为只是sort -n
的升序对它们进行排序。
编辑: 在我的目录中,我有很多dat文件。 它们包含的值像110000kg 24m 我需要按重量增加顺序订购
答案 0 :(得分:4)
您需要以这种方式使用该命令:
grep -Eo '[0-9]{1,}kg' *.dat | sort -t: -n -k2
使用“ -t”选项将冒号指定为字段分隔符。
您可以使用-r
选项来降低或倒序。