Batch file 批处理代码中文本文件中的字符串替换

Batch file 批处理代码中文本文件中的字符串替换,batch-file,Batch File,我有一个包含多行的文本文件(summary.yml),我想用其他文本替换其中的一些行。e、 g.在第7行中,我有“执行人:abcd”。我想将其替换为“执行人:%USERNAME%”。不知道为什么下面的代码不起作用。请帮忙 setlocal enabledelayedexpansion set vidx=0 for /F "tokens=*" %%A in (%cd%\summary.yml) do ( SET /A vidx=!vidx! + 1 set Sumvar!vidx

我有一个包含多行的文本文件(summary.yml),我想用其他文本替换其中的一些行。e、 g.在第7行中,我有“执行人:abcd”。我想将其替换为“执行人:%USERNAME%”。不知道为什么下面的代码不起作用。请帮忙

setlocal enabledelayedexpansion

set vidx=0
for /F "tokens=*" %%A in (%cd%\summary.yml) do (
    SET /A vidx=!vidx! + 1
    set Sumvar!vidx!=%%A

)
set Sumvar

set word1=Executed By: %USERNAME%

for /F "tokens=*" %%A in (%cd%\summary.yml) do (
     set Sumvar7=%!Sumvar7!:!word1!%
    )

首先需要将FOR变量设置为环境变量。然后正确地替换字符串。谢谢Squashman。你是说换这条线吗?设置Sumvar7=%!萨姆瓦7!:!字1!%。我不知道如何将变量设置为环境变量,你能举个例子吗?谢谢您的时间。您可以在第一个for/F命令中完成此操作!我没有得到你真正需要的东西;请提供summary.yml的示例,并说明所需的输出是什么。。。您可能还对以下内容感兴趣:
for/F
循环中的字符串替换……下面是summary.yml文件状态的示例:NA Last execcuted On:NA执行者:NA这些“NA”值“需要使用来自一些变量(如var1、var2、var3等)的一些值进行更新,以便在总结结束时。yml将更新为状态:var1 Last Excecuted On:var2 Executed By:var3您需要先将FOR变量设置为环境变量。”。然后正确地替换字符串。谢谢Squashman。你是说换这条线吗?设置Sumvar7=%!萨姆瓦7!:!字1!%。我不知道如何将变量设置为环境变量,你能举个例子吗?谢谢您的时间。您可以在第一个for/F命令中完成此操作!我没有得到你真正需要的东西;请提供summary.yml的示例,并说明所需的输出是什么。。。您可能还对以下内容感兴趣:
for/F
循环中的字符串替换……下面是summary.yml文件状态的示例:NA Last execcuted On:NA执行者:NA这些“NA”值“需要使用来自一些变量(如var1、var2、var3等)的一些值进行更新,以便在我的摘要结束时。yml将更新为状态:var1 Last execcuted On:var2由:var3执行。”