批处理怎样在原文件名中插入随机序号?
批处理怎样在原文件名中插入随机序号?有300多个MP4文件,并且不断更新中,放在车载播放器听,U盘中MP4文件总是按名称序次排列,MP4文件的顺序总是不变,我想用一个批处...
批处理怎样在原文件名中插入随机序号?
有300多个MP4文件,并且不断更新中,放在车载播放器听,U盘中MP4文件总是按名称序次排列,MP4文件的顺序总是不变,我想用一个批处理一键修改他们的排列顺序,隔断时间更新视频文件时执行一次随机排列,为此我想到在每文件名前加个随机数字序号,修改后MP4文件会被打乱重新排列一次,于是找到以下一段代码,但这段代码只能全部重新排序为纯数字,而不能保留原文件名并插入随机序号。
求:在原文件名前插入随机序号,最好是三位数或四位数。不甚感激!
例如:
A.MP4
B.MP4
C.MP4
D.MP4 ...
执行批处理修改文件名后,改成
001.A.MP4
002.B.MP4
003.C.MP4
004.D.MP4 ...
其中MP4文件会不同,像以下这样:
001.B.MP4
002.C.MP4
003.D.MP4
004.A.MP4 ...
@echo off
setlocal enabledelayedexpansion
set "n=0"
for /f "delims=" %%a in ('dir/a/b *.mp4') do call :a "%%a"
for /f "delims=" %%a in ('dir/a/b/on *.mp4') do set/a "n+=1"&ren "%%a" "!n:~-3!%%~xa"
echo 处理完成,按任意键退出...
exit
:a
ren "%~1" "%random%%~x1" || goto a 展开
有300多个MP4文件,并且不断更新中,放在车载播放器听,U盘中MP4文件总是按名称序次排列,MP4文件的顺序总是不变,我想用一个批处理一键修改他们的排列顺序,隔断时间更新视频文件时执行一次随机排列,为此我想到在每文件名前加个随机数字序号,修改后MP4文件会被打乱重新排列一次,于是找到以下一段代码,但这段代码只能全部重新排序为纯数字,而不能保留原文件名并插入随机序号。
求:在原文件名前插入随机序号,最好是三位数或四位数。不甚感激!
例如:
A.MP4
B.MP4
C.MP4
D.MP4 ...
执行批处理修改文件名后,改成
001.A.MP4
002.B.MP4
003.C.MP4
004.D.MP4 ...
其中MP4文件会不同,像以下这样:
001.B.MP4
002.C.MP4
003.D.MP4
004.A.MP4 ...
@echo off
setlocal enabledelayedexpansion
set "n=0"
for /f "delims=" %%a in ('dir/a/b *.mp4') do call :a "%%a"
for /f "delims=" %%a in ('dir/a/b/on *.mp4') do set/a "n+=1"&ren "%%a" "!n:~-3!%%~xa"
echo 处理完成,按任意键退出...
exit
:a
ren "%~1" "%random%%~x1" || goto a 展开
2个回答
展开全部
要想反复运行还不是那么简单呢 (未测试请先备份)
批处理放要处理的文件夹运行,编号形式为三位数加下划线接原文件名
请确定文件总数不要超,代码第一行的1000中0的个数决定编号位数可自己改
如果已有这种形式mp4文件会先去掉原编号
编号总是从001开始顺序编号但对应的mp4文件是随机的
无论有无新文件加入,每运行一次会重排一次
@echo off&cd/d %~dp0&set/a n=1000
setlocal enabledelayedexpansion
for /f "tokens=1* delims=_" %%i in (
'dir/b/a-d *.mp4^|findstr/b "[0-9][0-9]*_"')do ren "%%i_%%j" "%%j"
for %%i in (*.mp4)do set "#!random!=%%i"
for /f "tokens=1* delims==" %%i in ('set #')do (
set/a n+=1
echo !n:~1!_%%j
ren "%%j" "!n:~1!_%%j"
)
set/p=按任意键退出... <nul&pause>nul
展开全部
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /a-d/b/on *.mp4') do (
set /a Num=!random!%%9000+1000
ren "%%~a" "!Num!.%%~a"
)
pause
生成四位数的随机数
追问
依梦琴瑶,您好,谢谢。
你的这段能够实现插入命名,可是是随机数字,有重复序号或者有间隔号,不能顺序数字。
我找到的上面那段代码,可以随机命名MP4文件,而且数字顺序依次的。
实际上就是,将上面代码的序号结果,添加在文件名首就可了。
追答
也就是说文件全部打乱,然后把打乱后的文件按编号顺序排列,对吗?
yyykkkyyyy的代码不错!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询