
替换文本指定行数里,=号之后的内容,该怎么写这批处理?
比如文本内容为:文本名1.txt[abc]abcde=12345bcde=2345qwe=345我想第四行qwe=345,替换成qwe=543.for/f"skip=3"...
比如文本内容为:
文本名 1.txt
[abc]
abcde=12345
bcde=2345
qwe=345
我想第四行qwe=345, 替换成 qwe=543.
for /f "skip=3" %%i in (1.txt) do (
set/a n+=1
if !n! equ 4
这之后我就不知道该怎么写下去了,请高手指点下啊...
这个345不是一个固定值.但qwe=是一个固定的值.
请指教下. 展开
文本名 1.txt
[abc]
abcde=12345
bcde=2345
qwe=345
我想第四行qwe=345, 替换成 qwe=543.
for /f "skip=3" %%i in (1.txt) do (
set/a n+=1
if !n! equ 4
这之后我就不知道该怎么写下去了,请高手指点下啊...
这个345不是一个固定值.但qwe=是一个固定的值.
请指教下. 展开
展开全部
@Echo Off&Setlocal Enabledelayedexpansion
for /f "tokens=1* delims==" %%i in (1.txt) do (
set/a n+=1
(if !n! equ 4 (Echo %%i=456) else (If not "%%j"=="" (Echo %%i=%%j) else (Echo %%i)))>>2.txt
)
Pause
qwe=在固定行可以这样写.下面的代码是qwe=在不确定行(qwe=在任意行)
@Echo Off&Setlocal Enabledelayedexpansion
for /f "tokens=1* delims==" %%i in (1.txt) do (
(If "%%i"=="qwe" (Echo %%i=456) else (If not "%%j"=="" (Echo %%i=%%j) else (Echo %%i)))>>2.txt
)
Pause
更多追问追答
追问
没看明白,也不行啊.qwe=确定在一个固定行,但我要修改成的内容不固定是456.
追答
你想要怎样修改呢,用变量?
展开全部
@echo off
setlocal enabledelayedexpansion
set /p wen=345要换成的内容:
set a=0
for /f "tokens=*" %%i in (1.txt) do (
set /a a+=1
if !a!==4 (
set value=%%i
set "value=!value:345=!"
echo !value!%wen%>>2.txt
) else (echo %%i>>2.txt)
)
把要替换成的内容输入给变量wen
遍历1.txt,当a=4时,把第4行内容中的345换成空
并把剩下的内容和变量wen的内容一起输出到2.txt
else ,a不等于4的情况,则正常输出到2.txt
不想生成2.txt,调用jd08139的move 2.txt 1.txt加在最后即可(另起一行)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
@setlocal enabledelayedexpansion
set tgtline=3
set newval=543
set line=0
for /f %%a in (1.txt) do (
set /a line=line+1
if !line!==%tgtline% (
for /f "tokens=1 delims==" %%b in ("%%a") do (
echo %%b=%newval%>>a.tmp
)
) else (
echo %%a>>a.tmp
)
)
copy /y a.tmp 1.txt
del /q a.tmp
当然还有一个更好的工具sed
set tgtline=3
set newval=543
set line=0
for /f %%a in (1.txt) do (
set /a line=line+1
if !line!==%tgtline% (
for /f "tokens=1 delims==" %%b in ("%%a") do (
echo %%b=%newval%>>a.tmp
)
) else (
echo %%a>>a.tmp
)
)
copy /y a.tmp 1.txt
del /q a.tmp
当然还有一个更好的工具sed
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询