需要帮助以使用批处理脚本从文本文件中删除回车

时间:2014-10-09 18:42:52

标签: batch-file batch-processing

e.g

文本文件包含垂直格式的数据

  

     

B'/ P>      

C

需要将批处理脚本转换为以下

  

A,B,C

2 个答案:

答案 0 :(得分:2)

@echo off
    setlocal enableextensions disabledelayedexpansion

    set "first=1"
    <nul (
      for /f "usebackq delims=" %%a in ("input.txt") do (
        if defined first (set /p ".=%%a" & set "first=") else (set /p ".=,%%a")
      )
    ) >"output.txt" 

对于每个输入行,如果是第一个,则输出没有换行的行,否则输出一个命令和行,也没有换行。

要使用换行符,会使用set /p ".=textToOutput",但是当我们将输入流重定向到从nul读取时,它不会暂停输入,但会在没有换行符的情况下回显提示并继续

for循环的所有输出都将发送到目标文件

答案 1 :(得分:0)

试试这个:

@echo off
setlocal enabledelayedexpansion
for /f %%a in (file.txt) do (set "string=!string!%%a,")
set "string=%string:~0,-1%"
echo/%string%
pause