Board logo

标题: [系统相关] [已解决]bat命令,如何判断时间段范围? [打印本页]

作者: ygqiang    时间: 2014-11-25 19:57     标题: [已解决]bat命令,如何判断时间段范围?

本帖最后由 ygqiang 于 2014-11-25 20:40 编辑

bat命令,如何判断时间段范围?
12:15-12:19    21:50-21:54

只要在这2个时间段内,就运行下面的bat代码。
taskkill /f /im 软件xx.EXE
taskkill /f /im AutoRedrCard
ping 127.0.0.1 -n 2 >nul 2>nul
shutdown -s -f -t 2
  1. :begin1
  2. if %time:~0,2% geq 11 (if %time:~0,2% leq 15 goto :stat)
  3. if %time:~0,2% geq 17 (if %time:~0,2% leq 20 goto :stat)
  4. ping 127.0.0.1 -n 40 >nul 2>nul
  5. goto :begin1
复制代码
这个代码,应该如何修改下?
  1. :begin1
  2. if %time:~0,2% eq 12 (if %time:~3,2% geq 15 (if %time:~3,2%  leq 19) goto :stat)
  3. if %time:~0,2% eq 21 (if %time:~3,2% geq 50 (if %time:~3,2%  leq 55) goto :stat)
  4. ping 127.0.0.1 -n 40 >nul 2>nul
  5. goto :begin1
复制代码
这样修改,是否可行?
作者: apang    时间: 2014-11-25 20:12

  1. @echo off
  2. set "t=%time: =0%"
  3. if "%t:~,5%" geq "12:15" if "%t:~,5%" leq "12:19" goto :Next
  4. if "%t:~,5%" geq "21:50" if "%t:~,5%" leq "21:54" goto :Next
  5. pause & exit/b
  6. :Next
  7. echo shutdown -s -f -t 2
复制代码

作者: ygqiang    时间: 2014-11-25 20:39

回复 2# apang


   
多谢。。。
  1. :first1
  2. set "t=%time: =0%"
  3. if "%t:~,5%" geq "12:20" if "%t:~,5%" leq "12:25" goto :first11
  4. if "%t:~,5%" geq "21:50" if "%t:~,5%" leq "21:55" goto :first11
  5. ping 127.0.0.1 -n 40 >nul 2>nul
  6. goto :first1
  7. :first11
  8. taskkill /f /im 软件xxx.EXE
  9. taskkill /f /im AutoRedrCard.EXE
  10. ping 127.0.0.1 -n 5 >nul 2>nul
  11. shutdown -s -f -t 5
复制代码





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