批量删除文件名里面的部分字符。用批处理如何解决。

举个例子,我想实现的效果就是。图片里面的文件名只要出现了“詹超_”或者“A_”这些,就自动把它删除。图片都是jpg的。这种规则有很多我一个个输入就行了。能帮忙写一个么?谢... 举个例子,我想实现的效果就是。图片里面的文件名只要出现了“詹超_”或者“A_”这些,就自动把它删除。 图片都是jpg的。 这种规则有很多我一个个输入就行了。能帮忙写一个么?谢谢
好像我没表述清楚。我的意思是。 文件名里面出现 A- 通过批处理把这个A- 删除掉。其他的都还在。
展开
 我来答
hhqhhk
2017-08-22 · TA获得超过465个赞
知道小有建树答主
回答量:710
采纳率:69%
帮助的人:54.4万
展开全部
用下面的代码,放入txt,改成:批量修改当前文件夹下文件(夹)名中字符.bat,放在需要修改的文件夹内运行两次:第一次运行输入要替换的字符串:“A_”,替换后的字符串不输入,回车,全部“A_”删除完毕;第二次运行输入要替换的字符串:“詹超_”,替换后的字符串不输入,回车,全部“詹超_”删除完毕。
这个代码可以同时修改文件夹名,文件名,包括子文件夹及其下面的文件名,会一次同时处理完毕。
请采纳。

@echo off
set /p str1= 请输入要替换的文件(文件夹)名字符串(可替换空格):
set /p str2= 请输入替换后的文件(文件夹)名字符串(去除则直接回车):
echo.
echo 正在修改文件(夹)名,请稍候……
for /f "delims=" %%a in ('dir /s /b ^|sort /+65535') do (
if "%%~nxa" neq "%~nx0" (
set "file=%%a"
set "name=%%~na"
set "extension=%%~xa"
call set "name=%%name:%str1%=%str2%%%"
setlocal enabledelayedexpansion
ren "!file!" "!name!!extension!" 2>nul
endlocal
)
)
echo 修改完成
exit
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式