【发布时间】:2021-06-04 06:45:53
【问题描述】:
我对输出应该是按名称排序的扩展文件列表的位置进行了连接。拖到批处理的源是一个带有子文件夹的文件夹。
我得到的是:
.mp3
.txt
.mp3
.mp3
.txt
.docx
.txt
.docx
我想要的是:
.docx
.docx
.docx
.mp3
.mp3
.mp3
.txt
.txt
.txt
当前代码:
@echo off
chcp 1252 > nul
pushd "%~1"
for /f "Delims=" %%a in ('"for /f "Delims^=" %%b in ('dir /b /s /a-d') do @echo %%~xb"') do echo %%a
pause
我只需要按名称对输出进行排序,但如果我尝试排序命令它不起作用:
@echo off
chcp 1252 > nul
pushd "%~1"
for /f "Delims=" %%a in ('"for /f "Delims^=" %%b in ('dir /b /s /a-d') do @echo %%~xb |sort"') do echo %%a
pause
如果可能的话,我不想使用文本文件。
【问题讨论】:
-
您不想使用文本文件的原因是什么?它不仅很可能更快,而且
sort命令本身可能会使用默认临时目录中的文件来保存其工作存储,如果数据不适合主内存。 -
我只是认为如果不需要外部文件最好不要使用它们,但如果不可能,否则我会使用文本文件....
标签: batch-file command