运维日志您现在的位置是:首页 > 博客日志 > 运维日志

关于DIR按名称的排序问题

<a href='mailto:'>微wx笑</a>的头像微wx笑 2021-10-28运维日志 2 0关键字:   

在使用DIR /on 按名称的排序的时候,你会发现一个问题,它排出来的和windows下按名称排的完全不一样。

你期望的是从小到大的排序:
aYi无知

E:\TS视频下载\沙丘\6.ts 
E:\TS视频下载\沙丘\8.ts 
E:\TS视频下载\沙丘\10.ts 
E:\TS视频下载\沙丘\12.ts 
E:\TS视频下载\沙丘\14.ts 
E:\TS视频下载\沙丘\16.ts 
E:\TS视频下载\沙丘\18.ts 
E:\TS视频下载\沙丘\20.ts 
E:\TS视频下载\沙丘\22.ts


aYi无知

但得到的结果差强人意:
aYi无知

E:\TS视频下载\沙丘\10.ts
E:\TS视频下载\沙丘\100.ts
E:\TS视频下载\沙丘\1000.ts
E:\TS视频下载\沙丘\1002.ts
E:\TS视频下载\沙丘\1004.ts
E:\TS视频下载\沙丘\1006.ts
E:\TS视频下载\沙丘\1008.ts
E:\TS视频下载\沙丘\1010.ts
E:\TS视频下载\沙丘\1012.ts
E:\TS视频下载\沙丘\1014.ts
E:\TS视频下载\沙丘\1016.ts
E:\TS视频下载\沙丘\1018.ts
E:\TS视频下载\沙丘\102.ts
E:\TS视频下载\沙丘\1020.ts
E:\TS视频下载\沙丘\1022.ts
E:\TS视频下载\沙丘\1024.ts


aYi无知

解决方法
aYi无知

这个解决方法是通过循环递增来解决,如果你的文件不是数字,而是字母的话,需要另想办法aYi无知

以下代码保存为bat文件aYi无知

@echo off
set name1=E:\TS视频下载\沙丘\
set ext=.ts
for /l %%i in (1,1,3550) do if exist "%name1%%%i%ext%" echo %name1%%%i%ext% >> sq.list
pause

括号中的3550是最大的文件名数字,可以根据自己的需要修改。aYi无知

本文由 微wx笑 创作,采用 署名-非商业性使用-相同方式共享 4.0 许可协议,转载请附上原文出处链接及本声明。
原文链接:https://www.ivu4e.cn/blog/service/2021-10-28/765.html

很赞哦! () 有话说 ()

相关文章