在osx 10.9.4的BASH中使用sort命令

在osx 10.9.4的BASH中使用sort命令,bash,osx-mavericks,Bash,Osx Mavericks,我在bashshell中运行以下命令,结果没有排序。我是不是漏掉了什么明显的东西 ls /bin /usr/bin | grep -v '/bin:$'| grep -v '^$' | sort > proglist 结果不是排序列表,而是: 2to3 2to3- 2to3-2.7 2to32.6 BuildStrings CpMac DeRez GetFileInfo MergePef MvMac RSA_SecurID_getpasswd ResMerger Rez RezDet R

我在bashshell中运行以下命令,结果没有排序。我是不是漏掉了什么明显的东西

ls /bin /usr/bin | grep -v '/bin:$'| grep -v '^$' | sort > proglist
结果不是排序列表,而是:

2to3
2to3-
2to3-2.7
2to32.6
BuildStrings
CpMac
DeRez
GetFileInfo
MergePef
MvMac
RSA_SecurID_getpasswd
ResMerger
Rez
RezDet
RezWack
SetFile
SplitForks
UnRezWack
[
a2p
a2p5.12
a2p5.16
addftinfo
afconvert
afhash
afida
afinfo
afmtodit
afplay
agentxtrap
agvtool
alias
allmemory
applesingle
appletviewer
apply
apr-1-config
...

看起来结果是排序的,但它们也按文件类型分开…按降序排列:数字>大写>符号>小写

我没有足够的经验使用命令行来告诉您如何修复它,但在尝试任何激烈的操作之前,我会先研究一下这一点:)

它们是按顺序排列的。数字在大写字母之前,大写字母在小写字母之前。符号和标点符号之间和周围有不同的位置。您可以尝试执行
LC\u COLLATE=en\u US sort
,看看是否能得到更好的结果