[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 批处理命令set /p 引用值为数字的变量时无法正常执行的问题

新手请教变量引用问题:
-----------------代码1---------------------
  1. ::setlocal enabledelayedexpansion
  2. set var=9
  3. set /p num=%var%<nul
  4. ::set /p num=!var!<nul
  5. echo %num%
复制代码
-----------------代码2---------------------
  1. setlocal enabledelayedexpansion
  2. set var=9
  3. ::set /p num=%var%<nul
  4. set /p num=!var!<nul
  5. echo %num%
复制代码
--------------------------------------------
问题:代码1执行以后为何程序还停留在等待用户输入的状态?而且原本期待%var%被输出,但是也没有看到输出,我原本以为有了“<nul”可以自动跳过等待用户输入回车的步骤,不知为何?作为对比,代码2就可以自动跳过等待用户输入的状态,而且“9”(!var!)被正确输出了,请大神指点原因。
1

评分人数

谢谢楼上各位的指点,学习了

TOP

返回列表