bat文件中批处理设置变量延迟的问题-创新互联

在bat文件中想实现对变量的赋值和输出,发现设置的变量在后续使用中为空,代码如下:

创新互联是一家专业提供沿河企业网站建设,专注与做网站、成都做网站、H5开发、小程序制作等业务。10年已为沿河众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
@echo off
for %%i in (*) do (
set var=%%i
echo %var%
)

理论上,输出结果应为当前命令所在目录里的所有文件名,可实际的输出结果 却为
bat文件中批处理设置变量延迟的问题
问题分析:
这涉及到批处理命令中的变量延迟扩展问题,详细请参考:https://blog.csdn.net/subkiller/article/details/7344509
解决方法:

@echo off
for %%i in (*) do (
setlocal enabledelayedexpansion//设置变量延迟扩展
set var=%%i
echo !var!//使用变量
)

输出结果为:
bat文件中批处理设置变量延迟的问题

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


新闻名称:bat文件中批处理设置变量延迟的问题-创新互联
本文路径:http://myzitong.com/article/ccegje.html