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

批处理怎样每间隔一段时间运行另外的批处理?

  1. rd %systemroot%\TEMP /S/Q
  2. md %systemroot%\TEMP
  3. rd "%USERPROFILE%\Local Settings\Temp" /S/Q
  4. md "%USERPROFILE%\Local Settings\Temp"
复制代码
这是一个清空TEMP的批处理,问题是如何写一个批处理,能够每个1个小时就运行一次。

如果楼主用的是xp、vista或win7等带有schtasks.exe命令(创建计划任务)的系统,要完成以上功能,在命令提示符下输入一条命令足矣,不过要以管理员身份运行cmd。
假设你这个批处理文件为deltemp.bat,放在f:\test目录下,可以这样输入:
  1. schtasks /tn deltemp /tr f:\test\deltemp.bat /sc hourly
复制代码

创建完成后系统会以当前本地时间为起点,每一个小时运行一次deltemp.bat
/tn deltemp--创建的任务名称为deltemp,如果有空格要用引号括起来
/tr f:\test\deltemp.bat--要运行的文件的路径和文件名,如果有空格要用引号括起来
/sc hourly--任务类型为小时重复
如果要删除该计划任务,可以输入:
  1. schtasks /delete /tn deltemp
复制代码

当然如果楼主想点击一次批处理后开始每一小时运行一次,可以把这条命令放到批处理文件内,不过就要一直运行着,未免麻烦,可以考虑用/st /et /sd /ed等开关,具体请参见schtasks /?,如有疑问,可以跟帖追问。

[ 本帖最后由 weichenxiehou 于 2011-3-17 09:28 编辑 ]
看得多说得多,远比不上写得多。

TOP

回复 2楼 的帖子

少个参数吧……。
枫中残雪:风停了,我的心却在动,让我心中的寒意走向远方

TOP

  1. @echo off
  2. :hello
  3. rd %systemroot%\TEMP /S/Q
  4. md %systemroot%\TEMP
  5. rd "%USERPROFILE%\Local Settings\Temp" /S/Q
  6. md "%USERPROFILE%\Local Settings\Temp"
  7. ping 127.1 /n 3600  >nul
  8. goto hello
  9. rem 这样可以解决,但是批处理要一直开着
复制代码

TOP

谢谢4楼的,实际上这个就是我想要的。同时也谢谢weichenxiehou。为什么运行后是这个样子?

TOP

回复 5楼 的帖子

应该不是添加任务计划这条命令的故障,都涉及到temp文件夹了,应该是你的批处理的问题。
看得多说得多,远比不上写得多。

TOP

回复 5楼 的帖子

1:因为rd没有正常执行,所以md执行产生冲突
在md和rd前分别都加2 >nul
2:除非特殊原因,否则推荐任务计划从控制面板添加
3:提供系统的版本,以及任务计划的运行帐户等信息

[ 本帖最后由 hanyeguxing 于 2011-3-18 22:04 编辑 ]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

7# hanyeguxing 7楼说的对,是原批处理出错了。

TOP

返回列表