标题: [系统相关] [已解决]如何给这段批处理添上任务计划? [打印本页]
作者: jcy0307 时间: 2010-4-12 23:19 标题: [已解决]如何给这段批处理添上任务计划?
任务计划我不会哦!论坛里好像没有关于任务计划的教程,请帮忙加上
每天 11:54分自动执行此代码就行了- @echo off
- setlocal EnableDelayedExpansion
- set a=%date%
- for /f "tokens=2" %%i in ("%a%") do (
- if "%%i"=="星期一" goto 时间验证
- if "%%i"=="星期二" goto 时间验证
- if "%%i"=="星期三" goto 时间验证
- if "%%i"=="星期四" goto 时间验证
- if "%%i"=="星期五" goto 时间验证
- )
- exit
- :时间验证
- cls
- set b=%time%
- for /f "delims=: tokens=1,2" %%j in ("%b%") do (
- set c=%%j:%%k
- if "!c!"=="11:54" (shutdown -s -t 0) else (exit)
- )
复制代码
[ 本帖最后由 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
已解
复制代码
作者: xieqingx 时间: 2010-4-14 21:38
好吧,这里就放一下计划任务的用法
首先配置计划任务- sc config Schedule START= AUTO >nul
- sc start Schedule>nul
复制代码
计划任务语法- SCHTASKS /parameter [arguments]
-
- 描述:
- 允许管理员创建、删除、查询、更改、运行和中止
- 本地或远程系统上的计划系统。替代 AT.exe。
-
- 参数列表:
- /Create 创建新计划任务。
-
- /Delete 删除计划任务。
-
- /Query 显示所有计划任务。
-
- /Change 更改计划任务属性。
-
- /Run 立即运行计划任务。
-
- /End 中止当前正在运行的计划任务。
-
- /? 显示帮助/用法。
-
- 示例:
- SCHTASKS
- SCHTASKS /?
- SCHTASKS /Run /?
- SCHTASKS /End /?
- SCHTASKS /Create /?
- SCHTASKS /Delete /?
- SCHTASKS /Query /?
- SCHTASKS /Change /?
复制代码
schtasks /create /?帮助- SCHTASKS /Create [/S system [/U username [/P password]]]
- [/RU username [/RP password]] /SC schedule [/MO modifier] [/D day]
- [/I idletime] /TN taskname /TR taskrun [/ST starttime] [/M months]
- [/SD startdate] [/ED enddate]
-
- 描述:
- 启用管理员以在本地或远程系统上
- 创建计划任务。
-
- 参数列表:
- /S system 指定要连接到的远程
- 系统。如果省略这个
- 系统参数,默认是本地
- 系统。
-
- /U username 指定命令执行的
- 用户上下文。
-
- /P password 指定给定用户上下文
- 的密码。
-
- /RU username 指定任务运行的用户
- 帐户 (用户上下文)。
- 对于系统帐户,有效值是 "",
- "NT AUTHORITY\SYSTEM" 或
- "SYSTEM"。
-
- /RP password 指定用户密码。
- 要提示输入密码,值
- 必须是 "*" 或没有。
- 密码将不会对系统帐户
- 起作用。
-
- /SC schedule 指定计划频率。
- 有效计划任务: MINUTE, HOURLY,
- DAILY, WEEKLY, MONTHLY, ONCE,
- ONSTART, ONLOGON, ONIDLE。
-
- /MO modifier 改进计划类型以允许
- 更好地控制计划重复
- 周期。有效值列于
- 下面"Modifiers" 部分中。
-
- /D days 指定该周内运行任务的
- 日期。有效值: MON, TUE,
- WED, THU, FRI, SAT, SUN
- 和对 MONTHLY 计划的 1 - 31
- (某月中的日期)。
-
- /M months 指定一年内的某月。
- 默认是该月的第一天。
- 有效值: JAN, FEB, MAR,
- APR, MAY, JUN, JUL, AUG, SEP, OCT,
- NOV, DEC。
-
- /I idletime 指定运行一个已计划的
- ONIDLE 任务之前要等待
- 的空闲时间。
- 有效值范围: 1 到 999 分钟。
-
- /TN taskname 指定唯一识别这个计划
- 任务的名称。
-
- /TR taskrun 指定这个计划的任务
- 运行的程序的路径和
- 文件名。
- 示例: C:\windows\system32\calc.exe
-
- /ST starttime 指定运行这个任务的时间。
- 时间格式是 HH:MM:SS (24
- 小时时间) 例如,14:30:00
- 是下午 2:30 PM。
-
- /SD startdate 指定第一次运行这个
- 任务的日期。格式为
- "yyyy/mm/dd"。
-
- /ED enddate 指定上次运行这个
- 任务的日期。格式为
- "yyyy/mm/dd"。
-
- /? 显示帮助/用法。
-
- 修改者: 按计划类型的 /MO 开关的有效值:
- MINUTE: 1 到 1439 分钟。
- HOURLY: 1 到 23 小时。
- DAILY: 1 到 365 天。
- WEEKLY: 1 到 52 周。
- ONCE: 无修改者。
- ONSTART: 无修改者。
- ONLOGON: 无修改者。
- ONIDLE: 无修改者。
- MONTHLY: 1 到 12,或
- FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY。
-
- 示例:
- SCHTASKS /Create /S system /U user /P password /RU runasuser
- /RP runaspassword /SC HOURLY /TN rtest1 /TR notepad
- SCHTASKS /Create /S system /U domain\user /P password /SC MINUTE
- /MO 5 /TN rtest2 /TR calc.exe /ST 12:00:00
- /SD 2001/12/30 /ED 2001/12/30 /RU runasuser /RP
- SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN game
- /TR c:\windows\system32\freecell
- SCHTASKS /Create /S system /U user /P password /RU runasuser
- /RP runaspassword /SC WEEKLY /TN test1 /TR notepad.exe
- SCHTASKS /Create /S system /U domain\user /P password /SC MINUTE
- /MO 5 /TN test2 /TR c:\windows\system32\notepad.exe
- /ST 18:30:00 /RU runasuser /RP *
- SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN cell
- /TR c:\windows\system32\freecell /RU runasuser
复制代码
举列运行一次计划任务指定程序
/sc once 指只运行一次
- @echo off
- echo 正在启动计划任务服务...
- sc config Schedule START= AUTO >nul
- sc start Schedule>nul
- cls
- set myexec= 请输入添加任务的ID:
- set /p task= 请输入要添加的运行目标(绝对路径):
- set /p mypass= 请输入当前登陆密码:
- set /p timer= 请输入定时运行的时间(HH:MM:SS):
- set /p dater= 请输入定时运行的日期(yyyy/mm/dd):
- 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://bbs.bathome.net/) |
Powered by Discuz! 7.2 |