我有一个大型批处理文件,并且我将一些命令发送到txt文件,并且我已经使用空格分隔了这些部分
echo && echo( >> file.txt
当我运行它时,它确实创建了完美的空间,但在命令窗口中我得到了这个
ECHO is off.
如何防止这种情况出现。我在这个网站上搜索过,但无论我尝试什么似乎都不起作用。
以下是更多细节 -
@echo off
echo SetMTMode^(2^) >> file.txt
echo echo( >> file.txt
当我运行它时,第一行被回显到txt文件中,它是稍后进一步处理的命令。第二个回声没有消隐,它显示在屏幕上,但它确实回显(复制)到txt文件。它显示 -
ECHO is off.
如何关闭该声明?
答案 0 :(得分:1)
&&
仅在第一个命令成功时执行第二个命令。
在这种情况下,第一个命令将始终成功,因此不需要&&
- &
将执行相同的操作(似乎有&&
的瘟疫出现在SO)
所以 - 你正在运行两个单独的命令。第一个是echo
,第二个是echo( >> file.txt
由于仅重定向第二个命令,因此其输出将显示在文件中。第一个未重定向,因此其输出将显示在控制台上。
没有参数的 echo
会报告当前echo
状态,这就是您所看到的。既然你没有说你想看的东西,只是你不想看到回声状态,我们猜测。
如果你想在控制台上看到什么都没有,那么省略第一个echo
。
如果您想查看空行,请使用标准show a blank line
方法之一 - echo.
和echo(
作为收藏。
你的第二个命令 - 好吧,再说一遍,你没有说出你真正想要的文件,但它在文件上放置了一个包含两个空格的行。
echo
后面没有文字会报告echo
状态。
echo(
或echo.
后跟没有文字会提供换行符(CR LF)
echo(
或echo.
后跟空格会在换行符之前插入这些空格(CR LF)
答案 1 :(得分:0)
如果您想使用 echo 创建一个空行,只需执行以下操作:
echo. >>file.txt
点必须跟随回声而没有空格。