1

我有一个 XML 文件,我需要使用 DOS 命令将第 7 行替换为我自己的行。这该怎么做?

4

1 回答 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 回答