用批处理删除指定字符

来源:百度知道 编辑:UC知道 时间:2024/06/10 21:31:15
asdasd/G:\1414\123\asd/1232.bat
asdasd/G:\1414\123\asd/MP3.txt
asdasd/G:\1414\123\asd/333.bat
我想删除“G:1414\”
并把文本中的“\”修改成“/”
用自己的方式实现了,
最后一个疑问。
asdasd/新建文件夹/1.bat
asdasd/新建文件夹/3.bat
asdasd/新建文件夹/4.bat
asdasd/新建文件夹/100.jpg
asdasd/新建文件夹/101.jpg
我想隔两排,在后面加入一个字符“12345”
怎么做到?
就是在第二排,第四排…………后面都加个12345。这样

@echo off&setlocal enabledelayedexpansion
if not exist a.txt echo a.txt不在同级目录下。&&goto byebye
for /f "delims=" %%a in (a.txt) do (
set var=%%a
set "var=!var:G:\1414\=!"
set "var=!var:\=/!"
echo !var!
set /a n+=1
set /a line=!n!%%2
if "!line!"=="0" echo 12345
)
:byebye
pause>nul&&goto :eof

用记事本打开,搜索替换G:1414\为“”(空),搜索替换“\”为“/”

只能这样修改```

行数为双数的要加入12345是吧?第几排有种怪怪的感觉。
我先说几个小错误:
qivsran兄的变量n没有初始化
314ccp兄的在第二行以后全部加上12345

假设你要处理的文本文件 名为 asdasd.txt

@echo off&setlocal enabledelayedexpansion
for /f "delims=: tokens=1,2*" %%c in (asdasd.txt) do (set temp1=%%c%%d &echo !temp1:G\1414\=! >>MyTempFile1.txt)
for /f "delims=" %%e in (MyTempFile1.txt) do (set temp2=%%e &echo !temp2:\=/! >>MyTempFile.txt)
del /f /q MyTempFile1.txt

得到 MyTempFile.tx