此脚本下载地址:http://u.163.com/GQgZI7wR 提取码: SXvQ0pTe
很久没更新博客了,分享一个素材整理的脚本,给张老师(一个牛B剪辑)写的,专门整理一堆素材,素材里很多子目录,有相同名称素材,素材快速查询。。。
废话不多说,直接看代码吧。。。
1、File List Tool.bat
@echo off
set inputPath=G:\新建文件夹\新建文件夹
REM set /p inputPath=请输入需要整理的文件夹路径:
%inputPath:~0,2%
cd %inputPath%
set /a number=0
set /a sameNumber=0
if exist 文件列表.txt del 文件列表.txt /q
for /f %%i in ('dir /b /a-d /o-n-e /s') do set /a number+=1
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /b /a-d /s "%inputPath%"') do (
set /a totalNumber+=1
if not defined %%~nxi (
set %%~nxi=m
) else (
set /a sameNumber+=1
)
)
echo "%inputPath%",目录下所有文件(共%number%个文件,同名文件%sameNumber%个):>>文件列表.txt
echo " ">>文件列表.txt
dir /b /a-d /o-n-e /s>>文件列表.txt
echo --------------------------------------------------
echo "%inputPath%",目录下所有文件(共%number%个文件,同名文件%sameNumber%个)
echo 详细请查看“%inputPath%\文件列表.txt”
echo --------------------------------------------------
pause
2、Move SameName File.bat
@echo off
set inputPath=G:\新建文件夹\新建文件夹
%inputPath:~0,2%
cd %inputPath%
set /a totalNumber=0
set /a sameNumber=0
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /b /a-d /s "%inputPath%"') do (
set /a totalNumber+=1
if not defined %%~nxi (
set %%~nxi=m
) else (
%%~di
cd %%~dpi
REM 删除重复文件
REM del "%%~nxi"
REM echo %%i已删除。
REM 移动重复文件到文件夹
set /a sameNumber+=1
if not exist "%inputPath%\SameFile" (md "%inputPath%\SameFile")
move "%%i" "%inputPath%\SameFile\%%~ni_!sameNumber!%%~xi"
)
)
echo --------------------------------------------------
echo "%inputPath%"路径下总共有%totalNumber%个文件。
echo --------------------------------------------------
echo 移动了%sameNumber%个重复文件到SameFile文件夹。
echo --------------------------------------------------
pause
3、Delete SameName File.bat
@echo off
set inputPath=G:\新建文件夹\新建文件夹
%inputPath:~0,2%
cd %inputPath%
set /a totalNumber=0
set /a sameNumber=0
for /f "delims=" %%i in ('dir /b /a-d /s "%inputPath%"') do (
set /a totalNumber+=1
if not defined %%~nxi (
set %%~nxi=m
) else (
%%~di
cd %%~dpi
REM 删除重复文件
del "%%~nxi"
echo %%i已删除。
set /a sameNumber+=1
)
)
echo --------------------------------------------------
echo "%inputPath%"路径下总共有%totalNumber%个文件。
echo --------------------------------------------------
echo "%inputPath%"路径下总共有%sameNumber%个重复文件已经删除。
echo --------------------------------------------------
pause
4、Note
The Script By pfkue126@126.com
File List Tool.bat //列出目录下所有文件包括子目录,列出结果存放在“文件列表.txt”
Move SameName File.bat //移动同名文件到SameFile文件夹
Delete SameName File.bat //直接删除同名文件
1、打开脚本修改
“
set inputPath=G:\新建文件夹\新建文件夹
”
把后面路径修改成你需要整理的文件夹路径,保存退出。
2、win7下管理员权限运行即可。
注:Delete SameName File.bat谨慎运行,会直接删除同名文件,回收站无法恢复。