Umb*_*ule 5 windows command-line
我正在将批处理文件的输出重定向到文本文件中,并且不希望每个命令之间有空行。我意识到我可以使用 perl one-liner 进行后期处理,但我宁愿不这样做。是否有选项可以抑制这些不必要的空行?
cmd
在打印提示符之前总是输出一个新行。这意味着像
> echo foo
foo
> _
Run Code Online (Sandbox Code Playgroud)
echo
由于自动打印换行符,因此将始终有该空行。然而,像
> set /p x=foo<nul
foo
> _
Run Code Online (Sandbox Code Playgroud)
之间不会有空行,因为上面是允许打印内容而没有尾随换行符的技巧。尽管如此,提示仍然出现在下一行的开头。
这样做大概是为了使提示始终位于行的开头,无论最后一个命令的输出有多么混乱。在类 UNIX 上,由于最后一个命令没有打印换行符,因此通常会在行的中间找到提示符。
但似乎没有办法阻止他的行为。
你可以轻松地通过管道传输你正在做的任何事情
findstr /r /v /c:"^$"
Run Code Online (Sandbox Code Playgroud)
尽管。