To stornager:
根据5楼 flyinspace 兄的解释,对于行尾的 ^ 符号,它将把一行末尾的回车符转义,也就是让回车符失去原本已有的作用,换句话说,就是让回车符失去换行的作用,这样,每行末尾的 ^ 符号将在echo命令的作用下,将几行原本在不同行的文本“连接”成一行。但是由于你 ping 命令后面的>nul,导致echo命令本应该输出到原来文本的字符串重定向到空设备了,这样,你就无法看见你认为会出现的结果了。
修改一下代码之后,就可以显示出来了。
@echo off
echo ^|^
echo I love batch!^
echo ^|^
echo %time% >a.txt^
ping -n 2 127.1&start a.txtping&pause