我有一个 XML 文件,我需要使用 DOS 命令将第 7 行替换为我自己的行。这该怎么做?
问问题
1153 次
1 回答
0
我的建议是基于您通过编号而不是内容来识别行的事实
@echo OFF
REM Say LINE 7 to be removed
SETLOCAL ENABLEDELAYEDEXPANSION
SET LOWER=6
SET UPPER=8
SET INDEX=0
SET MYLINE="this is my new line"
SET OUTFILE=%~n1.new%~x1
>%OUTFILE% (
for /F "tokens=*" %%L in (%1) do (SET /A INDEX += 1
IF !INDEX! LEQ %LOWER% (echo %%L) ELSE break
)
echo %MYLINE%
more +%UPPER% %1
)
- 需要回显,因为我们进行了大规模重定向
- 循环中的计数器需要 ENABLEDELAYEDEXPANSION
- 您只需将 xml 文件作为参数传递给脚本。
高温高压
于 2012-10-07T18:53:21.087 回答