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

[文本处理] 求批处理在指定时间执行某命令

本帖最后由 winsfly 于 2012-10-11 09:24 编辑

电脑的计划任务关闭,不能运行at命令,想用if /I %time% GEQ xx:xx:xx.00 但是行不通,原因是比如我想在8点到18点正执行某命令,那么8居然大于等于10~18,

@echo off
if /I %time% GEQ 18:00:00.00 (start "" "http://x.3318.cc/"&exit) else (goto a)


:a
echo.
echo.
echo.
echo.
echo.
echo                        本网站属于非商业盈利性质,
echo                        下午18点过后将停止服务!!!
echo.
echo.
echo.
echo.
echo.
ping 127.0.0.1 -n 10 >nul
exit

这个批处理执行结果是 凌晨2-9点 18-23点 都会显示停止服务!但是我要的是8点到17:59:59.59都能打开网站
还有一个问题就是如果用echo %time% >time.txt
if /f "tokens=1 delims=:" %%i in (time.txt) do xxxxxxxx命令的话会提示此时不应有i%   好像此xpsp3系统不能用if /f命令提取

回复 4# winsfly




    我也是才学的  简单的会 看到复杂的 经常死一片脑细胞

TOP

回复 2# 51894660


    不错,本人一直对批处理情有独钟,就是学得慢

TOP

SCHTASKS
看好了,帮助还是很大的
枫中残雪:风停了,我的心却在动,让我心中的寒意走向远方

TOP

本帖最后由 51894660 于 2012-10-11 13:18 编辑

这是可以显示当前时间的 如果不想要 可以按根据第二行合适修改 这样代码就会少很多

下面问题代码有错误吧 是for 不是if  

我试了你说的代码 可以提取
  1. @ECHO OFF
  2. echo %time% >time.txt
  3. for /f "tokens=1 delims=:" %%i in (time.txt) do echo %%i   
  4. pause
复制代码
一直开着 根据设定的时间会自动开启或关闭服务
XPSP3环境下测试成功通过 win7的童鞋注意 win7防火墙服务名为MpsSvc 自己修改后在测试
  1. @echo off
  2. ::参照这里
  3. ::========================================================================
  4. if %time:~0,2% geq 18 (net stop sharedaccess) else (if %time:~0,2% lss 8 (net stop sharedaccess) else (net start sharedaccess&&goto str2))
  5. ::========================================================================
  6. :str
  7. echo %time:~0,8%
  8. ping -n 2 127.0.0.1>nul
  9. cls
  10. if %time:~0,2% equ 8 (net start sharedaccess) else goto :str
  11. :str2
  12. echo %time:~0,8%
  13. ping -n 2 127.0.0.1>nul
  14. cls
  15. if %time:~0,2% geq 18 (net stop sharedaccess) else goto :str2
  16. goto str
复制代码

TOP

返回列表