家里电脑上总有些重复的事要干,比如每天把照片按日期分类、批量重命名下载的文件、或者定时清理垃圾文件。很多人觉得这些事得靠专业软件,其实用Windows自带的批处理(.bat)脚本就能搞定,关键是学会怎么传参数。
什么是批处理传参数
简单说,就是运行一个.bat文件的时候,顺便带几个“指令”进去。比如你双击运行 move_photos.bat 2024-06,后面的 2024-06 就是参数,脚本会根据这个值决定把照片移到哪个文件夹。
参数怎么在脚本里用
Windows批处理用 %1、%2 这样的方式读取传进来的参数。第一个空格后的值是%1,第二个是%2,以此类推。
举个例子,你有个脚本叫 rename_files.bat,内容如下:
@echo off
set prefix=%1
set num=1
for %%f in (*.txt) do (
ren "%%f" "%prefix%_%%num%%%.txt"
set /a num+=1
)
echo 重命名完成!
pause
你在文件夹里放了几个txt文件,然后右键创建快捷方式,目标改成:
rename_files.bat 工作笔记
双击运行,所有txt文件就变成“工作笔记_1.txt”、“工作笔记_2.txt”这样了。
多个参数也一样处理
比如你想同时指定前缀和起始编号:
@echo off
set prefix=%1
set start=%2
set num=%start%
for %%f in (*.jpg) do (
ren "%%f" "%prefix%_%%num%%%.jpg"
set /a num+=1
)
运行时输入:
rename_pics.bat 婴儿照 100
照片就会从“婴儿照_100.jpg”开始排,特别适合整理宝宝成长记录。
实际应用场景
我邻居老李,每周都要把监控录像拷到硬盘,按周命名。他写了这么一行:
xcopy D:\camera\*.* E:\backup\week_%1\ /s /i
然后每次运行就打:backup.bat 23,自动备份到week_23文件夹,省得每次都手动建目录。
还有人用来快速生成家庭账单文件夹,传年月就行:
mkdir "D:\账单\%1"
copy template.xlsx "D:\账单\%1\%1-记账表.xlsx"
echo %1 账单已创建
运行 new_month.bat 2024-05,一键搞定。
别被“编程”俩字吓住,这些小脚本就像定个闹钟、设个快捷方式一样简单。学会了传参数,家里的电脑活儿能省下一大半时间。