【发布时间】:2020-03-31 10:00:51
【问题描述】:
我需要创建一个批处理文件来执行一个工具来生成一些文件,然后将这些文件传递给其他一些工具。
但问题是第一个工具生成\r\r\n 的序列应该是换行符。所以我需要用 \r\n 替换这些序列。
1.txt
line number 1
line number 2
line number 4
line number 5
我试过这种方法
@ECHO OFF
SETLOCAL EnableDelayedExpansion
SET "SEARCH_TEXT=`r"
SET "REPLACE_TEXT="
FOR /f "delims=" %%A IN (1.txt) DO (
SET "string=%%A"
SET "modified=!string:%SEARCH_TEXT%=%REPLACE_TEXT%!"
ECHO !modified!>>"2.txt"
)
但它只用\r\n替换\r\n\r\n
谁能帮我解决这个问题?
【问题讨论】:
-
我打赌文本文件内容的来源是
wmic命令。无论如何,以下工作:(for /F "delims=" %%L in ('findstr /N "^" "1.txt"') do @for /F "tokens=1* delims=:" %%E in ("%%L") do @echo(%%F) > "2.txt"(虽然这会删除前导冒号,但这可以在需要时轻松解决)... -
非常感谢!有用。正是我想要的。
-
不客气!请考虑accept答案然后...
标签: windows batch-file replace cmd line-breaks