我想在MS-DOS中打印一个程序的输出,所以我写了一个.bat文件,它写道:
cls
ruby foo.rb但是当它出现在我的命令提示符上时,输出看起来像这样:
c:\workspace>ruby foo.rb
foo output
c:\workspace>我想使用MS-DOS在输出中插入一个换行符,因为我不想让任何与代码应该做的事情无关的东西污染我的Ruby代码。
在MS-DOS中,唯一看起来像我想要的命令是'type‘和'print’,但这两个命令都是用来打印文件的。
我尝试创建一个包含两个空白行的文本文件,并使用'type‘命令将其输出,但它看起来很混乱。
任何想法都将不胜感激。
发布于 2009-02-23 16:37:14
echo.将生产一条新的生产线。
因此,您的脚本应该如下所示:
@ECHO OFF
cls
echo.
ruby foo.rb发布于 2012-04-16 20:38:51
即使这里有4个使用ECHO.的相同提示的答案,这也不是最好的解决方案!
这有两个缺点。
ECHO.比正常的echo命令慢约10倍,这是因为ECHO.将强制磁盘访问
如果存在名为ECHO (不带扩展名)的文件,则每个ECHO.命令都将导致找不到文件错误,而不是回显一个空行。
但是你能做什么呢?
对于一个简单的空行,有许多工作方法。
echo+
echo=
echo;
echo,
echo:
echo(但有时您需要一种安全的方法来回显变量的内容,即使变量为空或包含/?或\\..\..\windows\system32\calc.exe之类的奇怪内容。
ECHO<character>%variable%
echo=/?
echo;/?
echo,/?
echo:\\..\..\windows\system32\calc.exe那么大多数命令都会失败,只有ECHO(在任何情况下都能工作。
它看起来有点奇怪,但它是有效的,它不需要也不会对结束括号造成任何麻烦。
发布于 2009-02-23 16:42:52
这样如何:
@echo off
cls
echo.
ruby foo.rb
echo.再见
https://stackoverflow.com/questions/578302
复制相似问题