用BAT或者VBS 批量替换文件夹下任意文件名字包含.ABC的字符为空
3个回答
展开全部
这是BAT的,试过,可行
@echo off
setlocal enabledelayedexpansion
set file=
set /p file= 请输入要操作的文件名称(包括扩展名):
set "file=%file:"=%"
for %%i in ("%file%") do set file=%%~fi
set replaced=
set /p replaced= 请输入即将被替换的内容:
set all=
set /p all= 请输入替换字符串:
for /f "delims=" %%i in ('type "%file%"') do (
set str=%%i
set "str=!str:%replaced%=%all%!"
echo !str!>>"%file%"_tmp.txt
)
copy "%file%" "%file%"_bak.txt >nul 2>nul
move "%file%"_tmp.txt "%file%"
start "" "%file%"
@echo off
setlocal enabledelayedexpansion
set file=
set /p file= 请输入要操作的文件名称(包括扩展名):
set "file=%file:"=%"
for %%i in ("%file%") do set file=%%~fi
set replaced=
set /p replaced= 请输入即将被替换的内容:
set all=
set /p all= 请输入替换字符串:
for /f "delims=" %%i in ('type "%file%"') do (
set str=%%i
set "str=!str:%replaced%=%all%!"
echo !str!>>"%file%"_tmp.txt
)
copy "%file%" "%file%"_bak.txt >nul 2>nul
move "%file%"_tmp.txt "%file%"
start "" "%file%"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
@echo off
(for /f "delims=" %%i in ('dir /b /a-d^|findstr /c:".ABC"') do (
set "var="%%i""&call,set "var=%%var:.ABC=%%"
call,ren "%%i" %%var%%
))>nul
将删除.ABC。。。。
(for /f "delims=" %%i in ('dir /b /a-d^|findstr /c:".ABC"') do (
set "var="%%i""&call,set "var=%%var:.ABC=%%"
call,ren "%%i" %%var%%
))>nul
将删除.ABC。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
on error resume next
for each i in createobject("scripting.filesystemobject").getfolder(".").files
st=""
s=split(i.name,".ABC")
for n=0 to ubound(s)
st=st&s(n)
next
i.name=st
next
for each i in createobject("scripting.filesystemobject").getfolder(".").files
st=""
s=split(i.name,".ABC")
for n=0 to ubound(s)
st=st&s(n)
next
i.name=st
next
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询