Board logo

标题: [系统相关] 【已解决】求助if语句运行提示找不到参数 [打印本页]

作者: chanjhon    时间: 2017-11-29 12:48     标题: 【已解决】求助if语句运行提示找不到参数

本帖最后由 chanjhon 于 2017-11-29 17:30 编辑

想写个自动关机的脚本的,因为没写过就找百度了解了下,写了如下代码:
  1. @echo off
  2. echo 请输入几分钟后关机!
  3. echo 如果您不知道想输入的几个小时是多少分钟的话,
  4. echo 请输入 "1" 来打开计算器
  5. echo 如果不需要请直接输入时间!
  6. :Cal
  7. set /p Tm = 输入数字:
  8. if "%Tm%"=="1" (
  9. start calc&&goto Cal
  10. ) else (
  11. set /a Tm = %Tm%*60&&goto Act
  12. )
  13. :Act
  14. shutdown /s /t %Tm%
  15. pause > nul
复制代码
但是运行就提示找不到操作数,请前辈们看看错在哪儿!
还有要是改成
  1. if %Tm% equ 1
复制代码
就提示此处不该有1是怎么回事?
作者: lifei259    时间: 2017-11-29 16:58

  1. @echo off
  2. echo 请输入几分钟后关机!
  3. echo 如果您不知道想输入的几个小时是多少分钟的话,
  4. echo 请输入 "1" 来打开计算器
  5. echo 如果不需要请直接输入时间!
  6. :Cal
  7. set /p Tm=输入数字:
  8. if "%Tm%"=="1" (
  9. start calc&&goto Cal
  10. ) else (
  11. set /a Tm = %Tm%*60&&goto Act
  12. )
  13. :Act
  14. shutdown /s /t %Tm%
  15. pause > nul
复制代码

作者: chanjhon    时间: 2017-11-29 17:29

回复 2# lifei259


    原来是
  1. set /p
复制代码
参数与等于号之间不能有空格,这样用equ判断也正确的,感谢!!




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2