我有一个以|
为分隔符输出的文件。但是,其中一个字段是源系统中包含回车的描述字段。这是一个问题,当试图读取文件时,它会将其打断到一个新行。我想做的是删除所有前面没有|
的CF/LF。
我觉得这在命令行应该是可能的,但还没能想出
样本数据
|A|Testing CF/LF
This|CF/LF
预期输出
|A|Testing This|CF/LF
@ECHO Off
SETLOCAL
SET "line="
(
FOR /f "delims=" %%a IN (q26895698.txt) DO (
CALL :generate "%%a"
)
)>newfile.txt
TYPE newfile.txt
GOTO :EOF
:generate
SET "line=%line%%~1"
IF "%line:~-1%"=="|" SET "line="&FOR %%x IN ("%line%") DO ECHO(%%~x
GOTO :eof
我在测试中使用了一个名为q26895698.txt
的文件,其中包含您的数据。
生成新文件.txt
忍不住给人的印象是,你最好使用SED
thouh-谷歌"GNU SED"了解详细信息。。。