我想通过
linux排序排序一个文本文件,看起来像这样
v 1006 v10 1 v 1011
我会期望这样的结果:
v 1006 v 1011 v10 1
然而,使用排序,即使有各种选项,v10 1行仍然在中间.为什么?我会明白v10 1是在底部的顶部(取决于空格是否小于或等于1),但是为什么它保留在中间?
解决方法
它使用系统区域设置来确定字母的排序顺序.我的猜测是,随着你的地区,它忽略了空白.
$cat foo.txt v 1006 v10 1 v 1011 $LC_ALL=C sort foo.txt v 1006 v 1011 v10 1 $LC_ALL=en_US.utf8 sort foo.txt v 1006 v10 1 v 1011