“dir”命令使用的默认文件排序顺序/核心 Windows 10

“dir”命令使用的默认文件排序顺序/核心 Windows 10

总结 我无法复制 Windows 10 中命令使用的排序顺序dir,无论是在文件资源管理器中还是在 Total Commander 中。我尝试根据许多不同的列更改排序顺序,但仍然没有结果。因此,我想知道dir默认情况下命令列出的文件是如何排序的?我该如何更改它?


我注意到我的 MP3 播放器播放音乐的顺序有点“奇怪”。为了调查这个问题,我做了以下事情:

  • 在我的 Windows 10 下安装 SD 卡,
  • cmd以管理员身份运行,
  • 导航至 SD 卡根目录,
  • 已执行的dir命令。

我收到以下输出:

 Volume in drive D has no label.
 Volume Serial Number is 36BA-963E

 Directory of D:\

05.06.2018  23:00       159ÿ280ÿ594 02. Stream.mp3
15.10.2019  20:18       144ÿ000ÿ738 05. Campfire.mp3
11.02.2020  23:32       134ÿ040ÿ469 07. Piano Soft.mp3
11.02.2020  17:32       153ÿ195ÿ986 10. Flutes.mp3
16.09.2019  05:09       171ÿ600ÿ882 11. Tibetan.mp3
11.02.2020  08:13       115ÿ326ÿ973 13. Train.mp3
20.10.2018  22:16       159ÿ280ÿ281 01. Birds.mp3
05.06.2018  23:00       161ÿ086ÿ282 03. Sea.mp3
05.06.2018  23:00       161ÿ247ÿ510 04. Rain.mp3
05.06.2018  23:00       159ÿ280ÿ596 06. Cave.mp3
11.12.2019  17:57       131ÿ792ÿ464 12. Meditation.mp3
10.02.2020  19:42       142ÿ827ÿ986 08. Piano Water.mp3
10.02.2020  21:57       159ÿ780ÿ933 09. Jazz.mp3
              14 File(s)  1ÿ952ÿ741ÿ728 bytes
               0 Dir(s)   5ÿ819ÿ006ÿ976 bytes free

如您所见 - 文件未按文件名排序。通过更改多列的排序顺序,我无法复制上述排序顺序。我尝试过:

  • 文件名,
  • 文件扩展名,
  • 文件大小,
  • 创建日期,
  • 修改日期和
  • 上次保存日期。

一切都是徒劳的。

有人可以指导我,命令使用的默认排序顺序是什么dir

更重要的是——如何改变它(因为我的 MP3 播放器播放文件的顺序与此完全相同,都是“奇怪”的)?我说的“改变它”是指,我应该修改每个文件的哪个属性(例如可能是某个日期),以便dir命令报告的排序顺序尽可能接近字母顺序?

答案1

这是文件系统顺序 – 在文件管理器中它被称为“没有任何排序顺序”。

对于 FAT 文件系统,目录存储作为简单列表一系列文件条目。每当删除文件时,其插槽就会被标记为空。每当添加新文件时,它就会占用第一个空闲的插槽,该插槽可能位于末尾或中间某处。(这略微简化了 - 例如,实际上,“长”文件名会占用多个插槽 - 但它应该能说明问题。)

(这与按创建日期排序不完全相同,因为它是根据文件放置在特定文件夹中的时间确定的,而不是根据文件的整体创建时间确定的。)

这意味着对文件进行排序的一种方法是创建一个新目录,然后将文件移动到其中逐个按照您想要的顺序进行。许多玩家的工作方式与您的相同,因此已经存在实现此目的的工具:


同时,对于 NTFS 文件系统,目录条目存储在 B+ 树中,因此它们总是处于明确定义的顺序 - 如果我没记错的话,NTFS 根据文件名的 UTF-16 格式对条目进行排序。

相关内容