如何批处理 把文件名中的下杠"_"批量替换成“-”横杠
作者&投稿:伍枯 (若有异议请与网页底部的电邮联系)
@echo off&setlocal enabledelayedexpansionfor %%a in (abcdefghijklmn_01.jpg;abcdefghijklmn_02.jpg) do (set "name=%%~na"if not "!name:~10,1!"=="" ren "%%~a" "!name:~0,10!_!name:~10!%%~xa")
@echo off
setlocal enabledelayedexpansion
for /r %%i in (*.*) do (set a=%%~nxi
set n=!a: =_!
ren "%%i" "!n!"
)
pause
for /f "delims=" %%f in ('dir /b /a-d *_*.*') do (
if not "%%f"=="%0" (
set fn=%%~nxf
set fn=!fn:_=-!
ren "%%f" "!fn!"
))
什么类型的文件请说清楚
阿卫欣坦: @echo off&setlocal enabledelayedexpansion for /f "delims=" %%f in ('dir /b /a-d *_*.*') do ( if not "%%f"=="%0" ( set fn=%%~nxf set fn=!fn:_=-! ren "%%f" "!fn!"))
邢台县15519277770: 如何用批处理完成将文件夹及其子文件夹里所有文件的文件名中的下划线都替换成空格? - ?
阿卫欣坦: @echo off setlocal enabledelayedexpansion for /f %%i in ('dir/s/b^|findstr _') do ( set fn=%%~ni set fn=!fn:_= ! ren "%%i" "!fn!%%~xi" )
邢台县15519277770: 如何用批处理完成将文件夹及其子文件夹里所有文件的文件名中的空格都替换成下划线?谢谢~ - ?
阿卫欣坦: ::═代码═开始═ @echo off&setlocal enabledelayedexpansion for /f "delims=" %%i in ('dir /a/b/s *.*') do ( cd /d "%%~pi"&set n=%%~nxi set m=!n: =_!&ren "%%i" "!m!") pause ::═代码═结束═
邢台县15519277770: CMD 如何批量删除文件夹名字中的下划线和减号 - ?
阿卫欣坦: 请把脚本放在D:下的新建文件夹里 @echo off & setlocal enabledelayedexpansion for /r %%a in (*.doc) do ( if /i "%%~xa"==".doc" ( set "Str=%%~na.tmp$" set "Str=!Str:_=!" ren "%%~a" "!Str!" ren "%%~dpa!Str!" "!Str:-=!" )) for /r %%a in (*.tmp$) do if /i "%%~xa"==".tmp$" ren "%%~a" "%%~na.doc" pause
邢台县15519277770: 如何用bat来批处理文件名,在第十位后插入下横杠,其他不变 - ?
阿卫欣坦: 12345 @echooff&setlocal enabledelayedexpansion for%%a in(abcdefghijklmn_01.jpg;abcdefghijklmn_02.jpg) do( set"name=%%~na" ifnot "!name:~10,1!"==""ren "%%~a""!name:~0,10!_!name:~10!%%~xa")
邢台县15519277770: 请问如何用BAT文件批量把图片名中的中横线改为下横线? - ?
阿卫欣坦: setlocal enabledelayedexpansion for /f "delims=" %%i in ('dir /b *.gif') do ( set t=%%i set t=!t: =!set t=!t:-=_!ren "%%i" "!t!") 我直接在你的源代码上改的.
邢台县15519277770: 批处理去除文件夹名称里的特殊符号 - ?
阿卫欣坦: 我不知道你所说的多个标点是什么意思,如果你要去除多个标点的话,那你就把要去除的所有标记用set替换成空比如 set testStr=%testStr:,=% set testStr=%testStr:!=% set testStr=%testStr:.=% 这三句都执行完之后的testStr中就不会有, ! .这...
邢台县15519277770: DOS批处理:批量改文件名,去掉最后一个下划线之后的编号 - ?
阿卫欣坦: 罐头梨子的答案弊端就在于如果D后边数字大于9,那么截取的位置将发生变化,导致重命名失败.以下代码可以解决,以"_"为分隔,更精确一些.@echo off&setlocal enabledelayedexpansion for /r %%a in (*.txt) do ( set "fn=%%~nxa" set "ff=%%~xa" for /f "tokens=1-5 delims=_" %%a in ("!fn!") do ( set "newfn=%%a_%%b_%%c_%%d" )ren "!fn!" "!newfn!!ff!")
邢台县15519277770: 写批处理处理文件.因为要处理的文件名中有逗号,导致文件名不能识别.怎么解决? - ?
阿卫欣坦: 具体你想实现什么功能?演示代码 @echo off for /f "delims=" %%a in ('dir /b "E:\123\abc.txt"') do ( echo %%~na ) pause假设获取E:\123\abc.txt的文件名,代码输出为abc您的采纳是我们的动力和鼓励,请及时点击【采纳回答】
邢台县15519277770: bat批处理怎样去掉一个文件夹中所有txt文件名中的括号?一个文件夹中的多个txt文件名称如下:(1)、(2)、(3)、(4)(5)、(6)、(7)、……(99999)用bat... - ?
阿卫欣坦:[答案] @echo off&setlocal enabledelayedexpansion for %%a in ("*(*)*.txt") do ( set "b=%%a" set "b=!b:(=!" set "b=!b:)=!" if not exist "!b!" (ren "%%a" "!b!") else ( echo 存在一个重名文件,无法修改文件名 ) ) )将当前文件夹所有txt文件名含...