标题: [文本处理] [已解决]批处理命令for下变量为什么会出现错误? [打印本页]
作者: _FPXI19 时间: 2013-7-28 12:57 标题: [已解决]批处理命令for下变量为什么会出现错误?
本帖最后由 _FPXI19 于 2013-7-28 21:01 编辑
- :l
- for /f %%j in (test.txt) do (
- set /a hhh+=1
- echo %hhh%
- pause)
- goto :l
复制代码
我在读取一个文件并做变量计算的时候总是提示 ECHO 处于关闭状态。 ,有没有办法可以解决这个问题呢?
作者: weichenxiehou 时间: 2013-7-28 15:00
回复 1# _FPXI19
显示ECHO处于关闭状态的原因肯定是%hhh%的值为空。你就要检查它为什么为空了,可能原因是:
循环内部的%hhh%得到的值永远都是循环开始之前变量hhh的值,如果要得到实时值,需要用setlocal enabledelayedexpansion开启变量延迟,然后用!hhh!来取值,即echo,!hhh!。用echo,的原因是即便hhh为空也不会显示ECHO处于关闭状态而是显示空行。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |