摘要:还在手动创建文件夹、复制文件、修改后缀名?Windows自带的BAT脚本就能让你轻松自动化,零基础也能成为效率高手!
大家好!很多人以为自动化是Python、PowerShell的专利,其实Windows自带的BAT批处理脚本就是被严重低估的效率神器。今天我要分享几个实用的BAT脚本,让你不用安装任何软件,就能实现文件批量处理。
打开记事本,输入以下代码:
@echo off
echo 你好,BAT脚本世界!
pause将文件保存为hello.bat(注意后缀是.bat),双击运行。恭喜你,写出了第一个BAT脚本!
简单解释:
@echo off:隐藏命令本身的显示,让输出更干净
echo:在屏幕上显示文字
pause:暂停,等待用户按键
假设你的下载文件夹里有各种类型的文件,想要按类型自动分类:
@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion
echo 开始整理文件...
REM 创建分类文件夹
if not exist "图片" mkdir 图片
if not exist "文档" mkdir 文档
if not exist "压缩包" mkdir 压缩包
if not exist "程序" mkdir 程序
if not exist "其他" mkdir 其他
REM 移动图片文件
for %%i in (*.jpg *.png *.gif *.bmp *.jpeg) do (
echo 移动图片文件: %%i
move "%%i" "图片\" >nul
)
REM 移动文档文件
for %%i in (*.doc *.docx *.pdf *.txt *.xls *.xlsx *.ppt *.pptx) do (
echo 移动文档文件: %%i
move "%%i" "文档\" >nul
)
REM 移动压缩包文件
for %%i in (*.zip *.rar *.7z *.tar *.gz) do (
echo 移动压缩包文件: %%i
move "%%i" "压缩包\" >nul
)
REM 移动程序文件
for %%i in (*.exe *.msi *.bat *.cmd) do (
echo 移动程序文件: %%i
move "%%i" "程序\" >nul
)
echo.
echo 文件整理完成!
echo 按任意键查看整理结果...
pause >nul
REM 显示各文件夹文件数量
echo.
echo === 整理结果统计 ===
for /d %%d in (*) do (
if exist "%%d\" (
set /a count=0
for /f %%x in ('dir "%%d\" /b ^| find /c /v ""') do set count=%%x
echo %%d 文件夹: !count! 个文件
)
)
echo.
echo 任务完成!
pause@echo off
chcp 65001 >nul
set /p prefix=请输入新的文件名前缀:
set /p startnum=请输入起始编号:
echo 开始批量重命名...
set count=%startnum%
for %%i in (*.txt) do (
set num=000%count%
set num=!num:~-3!
ren "%%i" "%prefix%!num!.txt"
echo 重命名: %%i --^> %prefix%!num!.txt
set /a count+=1
)
echo 重命名完成!共处理了 %count% 个文件
pause@echo off
chcp 65001 >nul
set backup_folder=备份_%date:~0,4%%date:~5,2%%date:~8,2%
set source_folder=%userprofile%\Documents
echo 正在创建备份文件夹...
if not exist "D:\Backups\%backup_folder%" (
mkdir "D:\Backups\%backup_folder%"
)
echo 正在备份文档...
xcopy "%source_folder%\*" "D:\Backups\%backup_folder%\" /E /H /C /I /Y
echo 备份完成!文件已保存至:D:\Backups\%backup_folder%\
echo 备份时间:%date% %time%
pause@echo off
set logfile=操作日志_%date:~0,4%%date:~5,2%%date:~8,2%.txt
echo %date% %time% - 开始执行脚本 >> %logfile%
REM 你的主要代码在这里
echo 执行文件整理... >> %logfile%
echo %date% %time% - 脚本执行完成 >> %logfile%
echo 详细日志已保存到:%logfile%@echo off
REM 检查必要文件夹是否存在
if not exist "源文件" (
echo 错误:源文件夹不存在!
pause
exit /b 1
)
REM 执行操作,如果出错则跳转到错误处理
xcopy "源文件\*" "目标文件夹\" /E /H /C /I /Y
if errorlevel 1 goto :error
echo 操作成功!
goto :end
:error
echo 操作过程中出现错误!
pause
exit /b 1
:end我已经整理了「BAT批处理工具包」,包含:
在评论区回复「BAT工具」即可获取下载链接!
BAT脚本虽然简单,但在日常文件处理中却能发挥巨大作用。通过今天的分享,相信你已经感受到了自动化的魅力。真正的效率提升,不在于使用多高级的工具,而在于用合适的工具解决实际问题。
你在工作中遇到过哪些重复性文件操作?欢迎在评论区分享,也许我能帮你写个专门的脚本来解决!