String 我需要在包含特定字符串的行上方插入一个文本";[顶部]”;批处理编程
例如,文件String 我需要在包含特定字符串的行上方插入一个文本";[顶部]”;批处理编程,string,batch-file,text,insert,find,String,Batch File,Text,Insert,Find,例如,文件abc.txt包含以下文本,我必须在[TOP]上方添加文本“infra”: ;plcd ;abcd valueof=a,b,c [TOP] 输出应该是这样的: ;plcd ;abcd valueof=a,b,c infra [TOP] 如何在批处理编程中做到这一点 @echo off setlocal set "file=abc.txt" set "start=" for /f usebackq^ delims^=^ eol^= %%a in
abc.txt
包含以下文本,我必须在[TOP]上方添加文本“infra”:
;plcd
;abcd
valueof=a,b,c
[TOP]
输出应该是这样的:
;plcd
;abcd
valueof=a,b,c
infra
[TOP]
如何在批处理编程中做到这一点
@echo off
setlocal
set "file=abc.txt"
set "start="
for /f usebackq^ delims^=^ eol^= %%a in ("%file%") do (
if not defined start set "start=1" & break > "%file%"
if "%%~a"=="[TOP]" (>>"%file%" echo(infra)
>>"%file%" echo(%%a
)
对于文件中包含数据的每一行,如果它包含
[TOP]
,则返回infra
。在它之后,回显读到的行 到目前为止,您尝试了什么?sed
不是Windows上的标准安装,但是如果使用正确的工具,这种问题很容易解决。我是批处理编程新手Shaktiman..需要以下方面的帮助:(所以这不是一个新手农场。别生气,伙计……如果你很容易回答的话,那对我会有很大帮助,否则就离开它。汉克斯:)