[英]Newlines in batchfiles via caret ampersand echo. (^&echo.)
所以今天我了解到可以通过以下命令设置换行符:
set nl=^&echo.
例如:
set nl=^&echo.
echo Hello%nl%world
产量
Hello
world
但为什么这有效呢? ^&的意义是什么?
将代码放在.bat文件中,不要将echo设置为off(保持echo开启),您将看到如何扩展和执行命令。
set nl=^&echo.
echo One%nl%Two%nl%Three
C:\>set nl=&echo.
C:\>echo One & echo.Two & echo.Three
One
Two
Three
^
转义&
特殊字符,以便它是一个能够在nl
变量中设置的文字字符。 然后当nl
变量展开时, &echo.
插入。
剩下的就是解构&echo.
部分。 &符号&
意味着一个新的命令在同一行开始。 同一行上的新命令是echo.
,输出一个新行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.