windows - 通过插入符和符号回显在批处理文件中换行。 (^&回声。)

标签 windows batch-file cmd

所以我今天了解到可以通过以下命令设置换行符:

 set nl=^&echo.

例如:

set nl=^&echo.
echo Hello%nl%world

产量

Hello
world

但是为什么这行得通呢? ^&的意义是什么?

最佳答案

将代码放在 .bat 文件中,不要将 echo 设置为关闭(保持 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.,它输出一个新行。

关于windows - 通过插入符和符号回显在批处理文件中换行。 (^&回声。),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17177454/

相关文章:

java - PropertiesConfiguration 和 PropertyResourceBundle 在 Windows 和 Linux 上的行为不同

c# - 如何查找和删除文本文件中的控制字符

Powershell 从 cmd 运行消息框

java - 无法通过java运行cmd命令

Windows 控制台似乎不喜欢 Unicode

windows - 如何在mongo shell中每页显示命令输出页

windows - 适用于 Windows 的 Git Bash 显示/预期文件路径带有正斜杠,没有驱动器冒号

windows - 批处理脚本多选

batch-file - 批处理文件 : file mask

android - 如何在执行android仪器测试时在cmd控制台中打印日志