Powershell中Get-ChildItem命令的结果集默认顺序是什么?是否有顺序,或者它只是随机的,并且每次都会以不同的顺序给出结果。
问问题
2385 次
3 回答
13
没有保证的默认排序顺序。该文档没有说明。
中的实现FileSystemProvider
最终调用DirectoryInfo.GetFiles
. 该状态的文档
返回文件名的顺序不保证;如果需要特定的排序顺序,请使用 Sort 方法。
底层 API 调用是FindFirstFile
和FindNextFile
。Raymond Chen在此解释说,实际上文件系统驱动程序可能会遵守一些排序规则,但不应依赖于此。
于 2016-11-15T21:07:47.860 回答
4
默认排序对我不起作用。我得到:
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2015-10-12 10:51 tools
d---- 2015-10-12 10:58 cfg
d---- 2015-10-12 10:51 res
d---- 2015-10-12 10:50 brand
d---- 2015-10-12 10:51 lib
我不记得更改排序顺序。我在 Windows 7 SP1 上。如果我需要排序结果,我必须这样做ls | sort
。
于 2015-10-20T13:13:14.850 回答
-1
First folders in alphanumeric order (first numbers as [char]).
Then files in alphanumeric order (first numbers as [char]).
于 2013-04-04T10:13:54.900 回答