标题: [文本处理] 批处理sort命令排序问题,求大佬指教 [打印本页]
作者: 877 时间: 2023-8-7 09:48 标题: 批处理sort命令排序问题,求大佬指教
有0-20个文件,生成的xxx.txt文件里面排序不是按照大小排的
排序出来是0-1-10-11这样的,代码如下,还请大佬给修正一下,谢谢!- @echo off
- chcp 65001 >nul
- rem 批处理保存为utf-8编码格式
- for /d %%d in (*) do (
- pushd "%%d"
- (for /f "delims=" %%i in ('dir /b /a-d *.mp4 ^|sort') do (
- echo file '%%~fi'
- ))>xxx.txt
- if exist xxx.txt if not exist "%~dp0%%~nxd.mp4" (
- ffmpeg.exe -f concat -safe 0 -i xxx.txt -c copy "%~dp0%%~nxd.mp4"
- )
-
- popd
- )
- pause
复制代码
作者: wanghan519 时间: 2023-8-7 10:21
要不先预处理一下,把文件名前面加0补满3位,比如1.txt都变成001.txt- dir -Recurse *.txt | rni -NewName {([int]$_.BaseName).ToString('D3')+$_.Extension}
复制代码
作者: 77七 时间: 2023-8-7 10:44
- @echo off
- chcp 65001 >nul
- rem 批处理保存为utf-8编码格式
- for /d %%d in (*) do (
- pushd "%%d"
- setlocal enabledelayedexpansion
- set n=0
- for /f "delims=" %%i in ('dir /b /a-d *.mp4') do (
- if %%~ni gtr !n! set n=%%~ni
- )
- (for /l %%l in (1,1,!n!) do (
- if exist "%%l.mp4" echo file '%%l.mp4'
- ))>xxx.txt
- endlocal
- if exist xxx.txt if not exist "%~dp0%%~nxd.mp4" (
- ffmpeg.exe -f concat -safe 0 -i xxx.txt -c copy "%~dp0%%~nxd.mp4"
- )
- del xxx.txt 2>nul
- popd
- )
- pause
复制代码
作者: 877 时间: 2023-8-7 11:04
回复 3# 77七
可以了大佬,万分感谢!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |