打乱文件夹中文件顺序

最近帮助同学制作一个婚礼暖场视频,最后我打算做一个备份,将所有照片一起制作一个幻灯片,这样在现场宾客吃饭时候可以播放这个幻灯片并且另外配合背景音乐。我在软件导入照片时候,发现如果批量导入的话,软件里照片顺序和文件夹中是相同的,而文件夹中我尝试不管是通过名称排序还是大小排序,在同一场景下的照片多数情况还是会挨在一起,所以我有了打乱文件夹内文件顺序的需求。通过查询找不到在windows下随机排序的方法,只好采用简洁的步骤,我先将文件名称通过脚本设置成随机,然后再根据名称排序,到此问题解决。

通过查询找到一个批处理脚本,将下面脚本存到txt文件中并改后缀为.bat,放入要处理的文件夹下,双击运行即可。注意文件中处理的是jpg格式结尾的文件,如果有处理其他文件的需求,需要将脚本中jpg改为对应的后缀。

@echo off&setlocal EnableDelayedExpansion
set n=0
for /f "delims=" %%i in ('dir /b *.jpg') do ren "%%i" "R%%~ni%%~xi"
for /f "delims=" %%i in ('dir /b *.jpg') do set /a n+=1
for /f "delims=" %%i in ('dir /b *.jpg') do (
call:RR
ren "%%i" "!R!%%~xi"
)
exit
:RR
set /a R=%random%%%n%+1
if !R!==!W%R%! Goto:RR
set /a W!R!=!R!
Goto:eof

 

Reference:

https://zhidao.baidu.com/question/122439274.html

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.