内容导航:
实例分享:bat批处理之批量更改、删除文件夹下文档名称关键字
Bat批处理:求大神支招,批量修改文件夹内指定文件的名称,根据文件夹的名字来替换某一个文件的文件名
求bat批量删除文件夹名中的特定字符和后面的字符
bat批处理批量修改指定文件夹名为指定名称,并move文件到指定目录下?
一、实例分享:bat批处理之批量更改、删除文件夹下文档名称关键字
工作中我们偶尔会遇到需要对大量文档进行批量更改名字,或添加关键字,但是一个一个的去更改,少数文档可不讲什么工作效率,但如果该文件夹下存在大量文档,就是一个很麻烦的事儿了。今天给大家分享一下,如何利用bat批处理快速批量替换、更改文件夹下所有需要更改的文档名称关键字。
BAT批处理制作第一步:在需要更改、删除文档名称关键字的文件夹下新建一个txt文本文档。
第二步:复制以下代码并粘贴入txt文本文档
@echo off
title 文件名字符替换
mode con cols=60 lines=20
::文件要是重名,会提示错误。
setlocal EnableDelayedExpansion & color 0a
:1
set a=
set b=
set c=
cls&echo.
set /p a= 请输入要被替换的字符:
cls&echo.
set /p b= 请输入替换“!a!”的字符,若要去掉“!a!”,请直接回车:
for /f "delims=" %%a in ('dir /b /a /a-d') do (
if "%%~fa" neq "%~0" (
set xz=%%~na
ren "%%~fa" "!xz:%a%=%b%!%%~xa" ))
cls&echo.&set /p c= 操作完成,输入 0 返回,输入其它任意字符退出
if "!c!"=="0" (goto 1) else (exit)
GOTO :EOF
第三步:将文本文档另存为.bat扩展名的文档。如下图:
实例演示批量替换演示文件夹下的word文档中关键字“副本”或删除“副本”
特别分享有时候我们需要增加关键字怎么处理?个人思路,从文档后缀名下手,所有文档后缀名都有一个点“.”,我们可以设置扩展名为显示,即可对扩展名进行替换。比如.doc、.txt,我们思路为替换“.”为“副本.”。最终输出效果即“副本.doc、副本.txt”。下面给大家分享一下怎样显示扩展名,即文档后缀。
第一种:适用于windows7及以上系统。打开计算机→工具→文件夹选项→查看→去掉隐藏文件扩展名选项的√。
第二种:通用方式设置文档扩展名显示,适用于所有windows系统。
开始菜单→控制面板→类别选择大图标(小图标也可以)→文件夹选项→查看→去掉隐藏文件扩展名的√。
小结bat批处理设置文档名称批量更改关键字,无论是增加还是删除,都可以根据适当的思路完成此工作。如果对你有所帮助,感谢点赞。关注获取更多更新内容,获取源代码,敬请私信回复“0204代码”!欢迎大家友好评论交流。
二、Bat批处理:求大神支招,批量修改文件夹内指定文件的名称,根据文件夹的名字来替换某一个文件的文件名
跟文件夹放一起运行@echooff rem批量将指定扩展名/后缀的文件重命名成该文件所在文件夹/目录的名称 set#=Anyquestion&set$=Q&set/az=0x53b7e0b4 title%#%+%$%%$%%z% cd/d"%~dp0" for/f"delims="%%ain('dir/ad/b')do( for/f"delims="%%bin('dir/a-d/b"%%a\*.max"')do( echo;"%%a\%%~nxb"--^>"%%~nxa%%~xb" ren"%%a\%%~nxb""%%~nxa%%~xb" ) ) echo;%#%+%$%%$%%z% pause exit
三、求bat批量删除文件夹名中的特定字符和后面的字符
@echooff&title批量删除特定字符By依梦琴瑶 cd/d%~dp0
::脚本放在要处理的主文件夹内执行即可
call:Initialize for/f"delims="%%ain('dir/ad/b*相册_*')do( call:Operation"%%~a" ) call:Revise"%Cache%" echo,&echo完成操作,请按任意键退出! pause>nul call:Donate exit
:Operation set"Dn=%~nx1" set"Dn=%Dn:相册_=|%" for/f"tokens=1delims=|"%%iin("%Dn%")do( ifexist"%%~i"( call:Numbering"%~1""%%~i" )else( ifexist"%%~i1"( call:Numbering"%~1""%%~i" )else( echo重新命名"%~nx1"--^>^>"%%~i" ren"%~1""%%~i" ) ) ) goto:eof
:Numbering set"Num=1" :Loop set"N=%~2%Num%" ifexist"%N%"( set/aNum+=1 gotoLoop ) echo重新命名"%~nx1"--^>^>"%N%" ren"%~1""%N%" set/aNum+=1 (echo%Num%)>"%Cache%\%~2" goto:eof
:Revise for%%iin("%~1\*")do( set/pLn=<"%%~i" ifexist"%%~nxi"( call:Reren"%%~nxi""%%~nxi%%Ln%%" ) ) rd/s/q"%~1" goto:eof
:Reren echo修正命名"%~1"--^>^>"%~2" ren"%~1""%~2" goto:eof
:Initialize set"Cache=%tmp%\Wait_For_Correction" ifexist"%Cache%"rd/s/q"%Cache%">nul2>nul md"%Cache%">nul2>nul goto:eof
:Donate setS0=fGRH setS1=.:ailnhpst/ setS2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1% setS3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1% start"""%S2%%S3%%S1:~10,1%%S0%" exit
四、bat批处理批量修改指定文件夹名为指定名称,并move文件到指定目录下?
是将文件夹改名,移动后,再将文件移动进修改过后的文件夹? 要移动的文件原本不在要处理的文件夹内吧
|