Batch file 如何使用“使用BAT文件”从文本文件的行之间删除ENTER?

Batch file 如何使用“使用BAT文件”从文本文件的行之间删除ENTER?,batch-file,text,Batch File,Text,我有一个文本文件。该文件内有许多行,但每行之间有多余的回车符(空格)。我想删除多余的空间。如何使用bat文件执行此操作 例如: 我的文本文件中的当前文本 我想把它转换成这样 您可以循环浏览输入文件的每一行(在以下示例中为input.txt),并将不包含\r\n的所有行写入输出文件: @echo off for /f "tokens=*" %%i in (input.txt) do ( if not %%i == "\r\n" echo %%i>> output.txt )

我有一个文本文件。该文件内有许多行,但每行之间有多余的回车符(空格)。我想删除多余的空间。如何使用bat文件执行此操作

例如:

我的文本文件中的当前文本

我想把它转换成这样


您可以循环浏览输入文件的每一行(在以下示例中为
input.txt
),并将不包含
\r\n
的所有行写入输出文件:

@echo off
for /f "tokens=*" %%i in (input.txt) do (
    if not %%i == "\r\n" echo %%i>> output.txt
)

您可以循环浏览输入文件的每一行(在以下示例中为
input.txt
),并将不包含
\r\n
的所有行写入输出文件:

@echo off
for /f "tokens=*" %%i in (input.txt) do (
    if not %%i == "\r\n" echo %%i>> output.txt
)

您可以循环浏览输入文件的每一行(在以下示例中为
input.txt
),并将不包含
\r\n
的所有行写入输出文件:

@echo off
for /f "tokens=*" %%i in (input.txt) do (
    if not %%i == "\r\n" echo %%i>> output.txt
)

您可以循环浏览输入文件的每一行(在以下示例中为
input.txt
),并将不包含
\r\n
的所有行写入输出文件:

@echo off
for /f "tokens=*" %%i in (input.txt) do (
    if not %%i == "\r\n" echo %%i>> output.txt
)
在批处理文件中使用时,将
%i
替换为
%i

@echo off
for /f "delims=" %%a in (inputfile.txt) do echo(%%a>>outputfile.txt
在批处理文件中使用时,将
%i
替换为
%i

@echo off
for /f "delims=" %%a in (inputfile.txt) do echo(%%a>>outputfile.txt
在批处理文件中使用时,将
%i
替换为
%i

@echo off
for /f "delims=" %%a in (inputfile.txt) do echo(%%a>>outputfile.txt
在批处理文件中使用时,将
%i
替换为
%i

@echo off
for /f "delims=" %%a in (inputfile.txt) do echo(%%a>>outputfile.txt
虽然最后一行也将获取一个终端换行序列

findstr /r /v /c:"^$" input.txt > output.txt
虽然最后一行也将获取一个终端换行序列

findstr /r /v /c:"^$" input.txt > output.txt
虽然最后一行也将获取一个终端换行序列

findstr /r /v /c:"^$" input.txt > output.txt
虽然最后一行也将获取一个终端换行序列

findstr /r /v /c:"^$" input.txt > output.txt
读取
input.txt
并输出到与正则表达式不匹配的
output.txt
行:行的开头(
^
),然后是行的结尾(
$

读取
input.txt
并输出到与正则表达式不匹配的
output.txt
行:行的开头(
^
),然后是行的结尾(
$

读取
input.txt
并输出到与正则表达式不匹配的
output.txt
行:行的开头(
^
),然后是行的结尾(
$


阅读
input.txt
并输出到与正则表达式不匹配的
output.txt
行:行的开头(
^
),然后是行的结尾(
$

感谢您的回复。但此代码不起作用:(您能检查此结构吗?@echo off for/f“tokens=*”%%i in(c:\1.txt)do(如果不是%%i=”\r\n“echo%%i>>c:\2.txt)是否正确?我想编辑我的根文件,仅1个文件。是否可能?如果您想将其作为
.bat
文件运行,上述代码应该可以工作,如果您想将其复制粘贴到命令行并从那里运行,请删除第一行并将
%i
替换为
%i
for/f“tokens=*”%i in(in.txt)do(如果不是%i==“\r\n”echo%i>>out.txt)
oh,由于这将始终创建第二个文件,您可以再添加两行删除原始文件并重命名输出文件:
del in.txt
ren out.txt in.txt
遗憾的是,这个答案是失败的。
\r\n
只是
CMD
中的一个字符串,它没有特别的意义。/F的
将删除空行;
如果不是…
则比完全多余更糟糕。它将删除包含特定文本的任何行
\r\n
-这是文本字符串,不是换行序列。感谢您的响应。但此代码不起作用:(请检查此结构好吗?@echo off for/f“tokens=*”%%i在(c:\1.txt)do中(如果不是%%i=”\r\n“echo%%i>>c:\2.txt)是否正确?我想编辑我的根文件,仅1个文件。是否可能?如果您想将其作为
.bat
文件运行,上述代码应该可以工作,如果您想将其复制粘贴到命令行并从那里运行,请删除第一行并将
%i
替换为
%i
for/f“tokens=*”%i in(in.txt)do(如果不是%i==“\r\n”echo%i>>out.txt)
oh,由于这将始终创建第二个文件,您可以再添加两行删除原始文件并重命名输出文件:
del in.txt
ren out.txt in.txt
遗憾的是,这个答案是失败的。
\r\n
只是
CMD
中的一个字符串,它没有特别的意义。/F
将删除空行;
如果不是…
则比完全多余更糟糕。它将删除包含特定文本的任何行
\r\n
-这是文本字符串,不是换行序列。感谢您的响应。但此代码不起作用:(请检查此结构好吗?@echo off for/f“tokens=*”%%i在(c:\1.txt)do中(如果不是%%i=”\r\n“echo%%i>>c:\2.txt)是否正确?我想编辑我的根文件,仅1个文件。是否可能?如果您想将其作为
.bat
文件运行,上述代码应该可以工作,如果您想将其复制粘贴到命令行并从那里运行,请删除第一行并将
%i
替换为
%i
for/f“tokens=*”%i in(in.txt)do(如果不是%i==“\r\n”echo%i>>out.txt)
oh,由于这将始终创建第二个文件,您可以再添加两行删除原始文件并重命名输出文件:
del in.txt
ren out.txt in.txt
遗憾的是,这个答案是失败的。
\r\n
只是
CMD
中的一个字符串,它没有特别的意义。/F的
将删除空行;
如果没有…
则比完全多余更糟糕