下载的文件被网站在文件名里批量打上了网站地址的广告,不喜文件名太长,用下面脚本可以批量删除。
@echo off & setlocal enabledelayedexpansion
for /r %cd% %%a in (*.mp3) do ( set str=%%a
set str1=!str:{测试要删除的字符串}=!
set str2=!str1:%cd%\=!
echo !str! & echo !str2!
ren !str! !str2!
)
感叹号其实就是变量百分号(%)的强化版。之所以要用!而不用%,是因为在for循环中,当一个变量被多次赋值时,%str%所获取的仅仅是str第一次被赋予的值;要想刷新str的值,就必须首先通过命令"setlocal enabledelayedexpansion"来开启延迟变量开关,然后用!str!来获取str的值。