Ⅰ 如何利用bat文件批量修改文件名
方法:在当前目录下新建两个批处理文件:createsrc.bat和rename.bat。createsrc.bat文件内容如下:dir /a-d /b *.rmvb>src.txtecho 收集文件名成功!pause功能:将当前目录下的所有扩展名为.rmvb的文件的文件名都导入到src.txt文件中rename.bat文件内容如下:@for /f %%s in (src.txt) do (if exist %%s for /f %%d in (des.txt) do (rename %%s %%d))echo 操作成功!pause两个文件创建好之后按下面的步骤操作:1.双击运行createsrc.bat文件,会在当前目录下生成一个src.txt文件。2.用文本编辑软件(如EditPlus,记事本也行)打开src.txt并利用替换功能把文件名换成我们想要的文件名,另存为des.txt保存在当前目录。3.双击运行rename.bat文件,改名成功。
Ⅱ 用批处理(windows bat)如何实现批量修改多个文件内很多图片名称名字改为各自的文件名+_1,_2,_3,….
“名字改为各自的文件名”意思是在原来文件名末尾添加数字序号吗?不清楚你的实际文件/情况,仅以问题中的样例/说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件夹放一起运行@echo offrem 将多个文件夹内的jpg文件以所在文件夹的名称和递增数字序号重命名mode con lines=3000set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4title %#% +%$%%$%/%@% %z%cd /d "%~dp0"for /f "delims=" %%a in ('dir /ad/b/s') do (pushd "%%a"set n=1echo;"%%a"for /f "delims=" %%b in ('dir /a-d/b *.jpg 2^>nul') do (set "file=%%b"&set "base=%%~nxa"setlocal enabledelayedexpansionecho;"!file!" –^> "!base!_!n!%%~xb"endlocalset /a n+=1)popd)echo;%#% +%$%%$%/%@% %z%pauseexit
Ⅲ bat批量替换特定字符文件名称
@echooff&for/r%%ain(*.txt)do(setfn=%%~nxasetfn=!fn:B=C!rename"%%a""!fn!")
批处理文件在最上一层版文件夹内权
Ⅳ bat批量修改文件名
/*&cls@echooffrem根据相同前缀的文件名末尾的数字大小顺序重命名set#=Anyquestion&set$=Q&set/az=0x53b7e0b4title%#%+%$%%$%%z%set"rootpath=%~dp0"cd/d"%rootpath%"for/f"delims="%%ain('dir/a-d/b*_*.jpg^|findstr/i"_[0-9][0-9]*.[^.]*$"')doren"%%a""#%%~nxa"for/f"tokens=1*delims=|"%%ain('dir/a-d/b*_*.jpg^|findstr/i"_[0-9][0-9]*.[^.]*$"^|cscript-nologo-e:jscript"%~f0"')do(ren"%%a""%%b")echo;%#%+%$%%$%%z%pauseexit*/varm={};while(!WSH.StdIn.AtEndOfStream){vars=WSH.StdIn.ReadLine();vart=s.replace(/.[^.]+$/,'').split('_');if(m[t[0]]==undefined){m[t[0]]=[];}m[t[0]].push(s);}for(varninm){vara=m[n].sort(function(a,b){returnNumber(a.replace(/.[^.]+$/,'').split('_')[1])-Number(b.replace(/.[^.]+$/,'').split('_')[1])});vart=1;for(vari=0;i<a.length;i++){WSH.echo(a[i]+'|'+a[i].substr(1).replace(/d+(.[^.]+)$/,t.toString()+'$1'));t+=1;}}
Ⅳ 批量修改文件名 bat
@echo offfor /f "delims=" %%a in ('dir /a-d/s/b *.*') do (if not %%~xa==.bat (ren %%~nxa %%~na))pause以上代码是将123.doc.20171230的文件改成123.doc的代码,望采纳,谢谢!将代码放在要处理的文件夹目录下,双击即可,谢谢!
Ⅵ bat 批量替换子文件夹文件中文件名称
@echo offpushd c:\users\desktop\folder1for /f "tokens=*" %%i in ('dir/b/ad folder*') do (move %%i\1(1).tif %%i\%%i.tif %%i\%%i.tif .)
Ⅶ 怎么用bat文件批量修改文件名称
方法/步骤-重命名文件抄夹
1
以几个新建文件夹为例吧
Ⅷ 求一个可以批量修改子文件夹里文件名称的bat
不清楚你的实际文件/情况,仅以问题中的样例/说明为据复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的多个文件夹放一起运行<# :cls@echo offrem 将多个子文件夹里的的文件按照资源管理器里原有的顺序以其所在的文件夹名称重命名mode con lines=3000set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4title %#% +%$%%$%/%@% %z%cd /d "%~dp0"powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default))) -Args '%~dp0'"echo;%#% +%$%%$%/%@% %z%pauseexit#>$path=$args[0]; [email protected]'using System;using System.Collections.Generic;using System.Runtime.InteropServices;public static class ExpDir{ [DllImport("Shlwapi.dll", CharSet = CharSet.Unicode)] public static extern int StrCmpLogicalW(string p1, string p2); public static string[] Sort(string[] f) { Array.Sort(f, StrCmpLogicalW); return f; } }'@;Add-Type -TypeDefinition $codes [email protected](dir -liter $path|?{$_ -is [System.IO.DirectoryInfo]});for($i=0;$i -lt $folders.length;$i++){ write-host ('————'+$folders[$i].Name+'————'); [email protected](dir -liter $folders[$i].FullName|?{$_ -is [System.IO.FileInfo]}|%{$_.Name}); if($files.length -ge 1){ $list=[ExpDir]::Sort($files); for($j=0;$j -lt $list.count;$j++){ $ext=''; $m=[regex]::match($list[$j], '\.[^\.]+$'); if($m.Success){$ext=$m.groups[0].value;}; $newname=$folders[$i].Name+$ext; if($j -ge 1){$newname=$folders[$i].Name+' ('+($j+1).toString()+')'+$ext;}; write-host ($list[$j]+' –> '+$newname); }; };}
Ⅸ 批量修改替换指定的文件名 bat
以下是我网络空间里之前已经写过的批处理,就是针对你这种情况写的。
你看看吧,不懂再留言给我。
http://hi..com/kaixiawei/item/655fcd3cc3600ebf124b146f
Ⅹ 求bat给所在文件夹的文件进行批量替换符号重命名
不清楚你的实际文件/情况,仅以问题中的说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件或文件夹放一起双击运行
/*&cls&echooff&cd/d"%~dp0"&modeconlines=5000rem将多个mp4文件名称开头的指定特征字符删除,并添加所在文件夹名称前缀字符set#=Anyquestion&set_=WX&set$=Q&set/az=0x53b7e0b4title%#%+%$%%$%/%_%%z%dir/a-d-h/b/s*.mp4|cscript-nologo-e:jscript"%~f0"echo;%#%+%$%%$%/%_%%z%pauseexit*/varfso=newActiveXObject('Scripting.FileSystemObject');while(!WSH.StdIn.AtEndOfStream){varit=WSH.StdIn.ReadLine();varfile=fso.GetFile(it);vartmpname=file.Name.replace(/^d+*[-_]*/,'');if(tmpname!=file.Name){varnewname=file.ParentFolder.Name+'-'+tmpname;WSH.StdErr.WriteLine(it+'–>'+newname);}}
未经允许不得转载:山九号 » 批量替换文件名的bat|怎么用bat文件批量修改文件名称