BAT批处理中输出变量换行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BAT批处理中输出变量换行相关的知识,希望对你有一定的参考价值。

比如有一个变量
set str=AAA<换行>BBB

期望输出:
AAA
BBB

要怎么实现?

参考技术A 试图给一变量赋多行字符?估计批处理没这功能,即使可以,要想赋值和输出也太麻烦。输出多行字符还是设一组变量或保存到临时文件不算费事。
批处理中的我没找到方法,命令行倒是测试过,并在我空间关于变量的一篇文章提到,请在命令行按我说的操作:
set str=AAA^ 回车再回车
BBB 回车
set str 回车
最后一行就是检验结果,不能用echo命令看,或用for /f 命令也能发现它是多行字符
参考技术B echo ■执行后换行。
举个例子,下面的文字保存为bat:

@echo off
set /p a=■<nul
set /p a=■<nul

运行结果为:
■■

但若使用

@echo off
echo ■
echo ■

则运行结果为:



有时高级编程需要这种效果。
参考技术C @echo off
setlocal enabledelayedexpansion
set str=AAA^\

BBB
echo !str!

以上是关于BAT批处理中输出变量换行的主要内容,如果未能解决你的问题,请参考以下文章

bat文件中批处理设置变量延迟的问题

从 Windows 批处理 (.bat) 脚本中回显带有 Unix 行尾的文本

bat 如何实现换行

批处理 bat 怎样可以把一个txt文本中的换行全部去掉?请大神赐教

bat批处理怎样实现txt文件按标记换行?

.bat学习-基础语法