Board logo

标题: [系统相关] [已解决]如何给这段批处理添上任务计划? [打印本页]

作者: jcy0307    时间: 2010-4-12 23:19     标题: [已解决]如何给这段批处理添上任务计划?

任务计划我不会哦!论坛里好像没有关于任务计划的教程,请帮忙加上
每天 11:54分自动执行此代码就行了
  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. set a=%date%
  4. for /f "tokens=2" %%i in ("%a%") do (
  5. if "%%i"=="星期一" goto 时间验证
  6. if "%%i"=="星期二" goto 时间验证
  7. if "%%i"=="星期三" goto 时间验证
  8. if "%%i"=="星期四" goto 时间验证
  9. if "%%i"=="星期五" goto 时间验证
  10. )
  11. exit
  12. :时间验证
  13. cls
  14. set b=%time%
  15. for /f "delims=: tokens=1,2" %%j in ("%b%") do (
  16. set c=%%j:%%k
  17. if "!c!"=="11:54" (shutdown -s -t 0) else (exit)
  18. )
复制代码

[ 本帖最后由 jcy0307 于 2010-4-13 22:13 编辑 ]
作者: lxzzr    时间: 2010-4-12 23:31

晕,计划任务不就一“AT”命令么,直接 AT /?
作者: jcy0307    时间: 2010-4-12 23:33

如果没开启任务计划服务呢?
作者: GNU    时间: 2010-4-12 23:41     标题: 回复 3楼 的帖子

那就自己去开启吧,用sc命令。
作者: hanyeguxing    时间: 2010-4-12 23:42

原帖由 jcy0307 于 2010-4-12 23:33 发表
如果没开启任务计划服务呢?

使用Net start或sc启用他呗
还有,为什么不用Schtasks命令呢?
直接使用控制面板-任务计划-添加任务计划。

[ 本帖最后由 hanyeguxing 于 2010-4-12 23:45 编辑 ]
作者: jcy0307    时间: 2010-4-13 22:11

已解
  1. at 11:54 /every:13 "%0"
复制代码

作者: xieqingx    时间: 2010-4-14 21:38

好吧,这里就放一下计划任务的用法
首先配置计划任务
  1. sc config Schedule START= AUTO >nul
  2. sc start Schedule>nul
复制代码
计划任务语法
  1. SCHTASKS /parameter [arguments]
  2. 描述:
  3.     允许管理员创建、删除、查询、更改、运行和中止
  4.     本地或远程系统上的计划系统。替代 AT.exe。
  5. 参数列表:
  6.     /Create         创建新计划任务。
  7.     /Delete         删除计划任务。
  8.     /Query          显示所有计划任务。
  9.     /Change         更改计划任务属性。
  10.     /Run            立即运行计划任务。
  11.     /End            中止当前正在运行的计划任务。
  12.     /?              显示帮助/用法。
  13. 示例:
  14.     SCHTASKS
  15.     SCHTASKS /?
  16.     SCHTASKS /Run /?
  17.     SCHTASKS /End /?
  18.     SCHTASKS /Create /?
  19.     SCHTASKS /Delete /?
  20.     SCHTASKS /Query  /?
  21.     SCHTASKS /Change /?
复制代码
schtasks /create /?帮助
  1. SCHTASKS /Create [/S system [/U username [/P password]]]
  2.     [/RU username [/RP password]] /SC schedule [/MO modifier] [/D day]
  3.     [/I idletime] /TN taskname /TR taskrun [/ST starttime] [/M months]
  4.     [/SD startdate] [/ED enddate]
  5. 描述:
  6.     启用管理员以在本地或远程系统上
  7.     创建计划任务。
  8. 参数列表:
  9.     /S           system            指定要连接到的远程
  10.                                    系统。如果省略这个
  11.                                    系统参数,默认是本地
  12.                                    系统。
  13.     /U           username          指定命令执行的
  14.                                    用户上下文。
  15.     /P           password          指定给定用户上下文
  16.                                    的密码。
  17.     /RU          username          指定任务运行的用户
  18.                                    帐户 (用户上下文)。
  19.                                    对于系统帐户,有效值是 "",
  20.                                    "NT AUTHORITY\SYSTEM" 或
  21.                                    "SYSTEM"。
  22.     /RP          password          指定用户密码。
  23.                                    要提示输入密码,值
  24.                                    必须是 "*" 或没有。
  25.                                    密码将不会对系统帐户
  26.                                    起作用。
  27.     /SC          schedule          指定计划频率。
  28.                                    有效计划任务: MINUTE, HOURLY,
  29.                                    DAILY, WEEKLY, MONTHLY, ONCE,
  30.                                    ONSTART, ONLOGON, ONIDLE。
  31.     /MO          modifier          改进计划类型以允许
  32.                                    更好地控制计划重复
  33.                                    周期。有效值列于
  34.                                    下面"Modifiers" 部分中。
  35.     /D           days              指定该周内运行任务的
  36.                                    日期。有效值: MON, TUE,
  37.                                    WED, THU, FRI, SAT, SUN
  38.                                    和对 MONTHLY 计划的 1 - 31
  39.                                    (某月中的日期)。
  40.     /M           months            指定一年内的某月。
  41.                                    默认是该月的第一天。
  42.                                    有效值: JAN, FEB, MAR,
  43.                                    APR, MAY, JUN, JUL, AUG, SEP, OCT,
  44.                                    NOV, DEC。
  45.     /I           idletime          指定运行一个已计划的
  46.                                    ONIDLE 任务之前要等待
  47.                                    的空闲时间。
  48.                                    有效值范围: 1 到 999 分钟。
  49.     /TN          taskname          指定唯一识别这个计划
  50.                                    任务的名称。
  51.     /TR          taskrun           指定这个计划的任务
  52.                                    运行的程序的路径和
  53.                                    文件名。
  54.                                    示例: C:\windows\system32\calc.exe
  55.     /ST          starttime         指定运行这个任务的时间。
  56.                                    时间格式是 HH:MM:SS (24
  57.                                    小时时间) 例如,14:30:00
  58.                                    是下午 2:30 PM。
  59.     /SD          startdate         指定第一次运行这个
  60.                                    任务的日期。格式为
  61.                                    "yyyy/mm/dd"。
  62.     /ED          enddate           指定上次运行这个
  63.                                    任务的日期。格式为
  64.                                    "yyyy/mm/dd"。
  65.     /?                             显示帮助/用法。
  66. 修改者: 按计划类型的 /MO 开关的有效值:
  67.     MINUTE:  1 到 1439 分钟。
  68.     HOURLY:  1 到 23 小时。
  69.     DAILY:   1 到 365 天。
  70.     WEEKLY:  1 到 52 周。
  71.     ONCE:    无修改者。
  72.     ONSTART: 无修改者。
  73.     ONLOGON: 无修改者。
  74.     ONIDLE:  无修改者。
  75.     MONTHLY: 1 到 12,或
  76.              FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY。
  77. 示例:
  78.     SCHTASKS /Create /S system /U user /P password /RU runasuser
  79.              /RP runaspassword /SC HOURLY /TN rtest1 /TR notepad
  80.     SCHTASKS /Create /S system /U domain\user /P password /SC MINUTE
  81.              /MO 5 /TN rtest2 /TR calc.exe /ST 12:00:00
  82.              /SD 2001/12/30 /ED 2001/12/30 /RU runasuser /RP
  83.     SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN game
  84.              /TR c:\windows\system32\freecell
  85.     SCHTASKS /Create /S system /U user /P password /RU runasuser
  86.              /RP runaspassword /SC WEEKLY /TN test1 /TR notepad.exe
  87.     SCHTASKS /Create /S system /U domain\user /P password /SC MINUTE
  88.              /MO 5 /TN test2 /TR c:\windows\system32\notepad.exe
  89.              /ST 18:30:00 /RU runasuser /RP *
  90.     SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN cell
  91.              /TR c:\windows\system32\freecell /RU runasuser
复制代码


举列运行一次计划任务指定程序
/sc once 指只运行一次
  1. @echo off
  2. echo 正在启动计划任务服务...
  3. sc config Schedule START= AUTO >nul
  4. sc start Schedule>nul
  5. cls
  6. set myexec=  请输入添加任务的ID:
  7. set /p task=  请输入要添加的运行目标(绝对路径):
  8. set /p mypass=  请输入当前登陆密码:
  9. set /p timer=  请输入定时运行的时间(HH:MM:SS):
  10. set /p dater=  请输入定时运行的日期(yyyy/mm/dd):
  11. SCHTASKS /Create /SC once /TN %myexec% /TR "%task%" /ST %timer% /SD %dater% /RU %username% /RP %mypass% >nul&&echo    添加成功&pause
复制代码

[ 本帖最后由 xieqingx 于 2010-4-14 21:40 编辑 ]
作者: GNU    时间: 2010-4-14 23:46     标题: 回复 7楼 的帖子

没有必要把完整的帮助文档都贴出来吧,告诉人家怎么查就够了。




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