schtasks 命令简述: 安排命令和程序,使其定期运行或在指定时间运行。向计划中添加任务和从中删除任务、根据需要启动和停止任务以及显示和更改计划的任务。 在进行schtasks 这个计划任务命令的参数详解之前,先简要提出以下几点: 1、SchTasks.exe 执行的操作类似于“控制面板”中“计划任务”中的操作。可以使用两种工具中的任一种来创建、删除、配置或显示计划任务。 2、键入不带任何参数的 schtasks 执行查询。 3、用户必须是命令起作用的计算机上的 Administrators 组(管理员)的成员。(软媒备注:Vista或者Win7下可以用管理员身份运行命令行) 4、要确认计划运行或要找出计划不运行的原因,请查看“任务计划”服务事务日志 Systemroot\SchedLgU.txt。该日志记录了由包括“计划任务”和 SchTasks.exe 在内的所有使用该服务的工具启动的尝试运行。 5、损坏任务文件的情况极少发生。已损坏文件不会运行。在已损坏任务上试图执行某项操作时,SchTasks.exe 显示以下错误消息: 错误:数据非法。 已损坏任务无法恢复。要恢复系统的计划任务特征,请使用 SchTasks.exe 或“计划任务”从系统中删除任务并重新计划。 6、SchTasks.exe 取代了包含在 Windows 早期版本中的工具 At.exe。XP、Vista、Windows7、Windows2003/2008等系统中均可以使用。 Schtasks 计划任务参数 详解 [ 语法schtasks/create/tnTaskName/trTaskRun/scschedule [/momodifier] [/dday] [/mmonth[,month...] [/iIdleTime] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] /? 参数
注释
每个计划类型的语法和范例。若要查看该命令语法,请单击以下命令: schtasks create minute 语法schtasks/create/tnTaskName/trTaskRun/sc minute [/mo {1 - 1439}] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划任务每 20 分钟运行一次。下面的命令计划安全脚本 Sec.vbs 每 20 分钟运行一次。由于命令没有包含起始日期或时间,任务在命令完成 20 分钟后启动,此后每当系统运行它就每 20 分钟运行一次。请注意,安全脚本源文件位于远程计算机上,但任务在本地计算机上计划并执行。 schtasks /create /sc minute /mo 20 /tn "Security Script" /tr \\central\data\scripts\sec.vbs 作为响应,SchTasks.exe 显示一条消息来说明任务会以当前用户的权限运行并需要当前用户的密码。输入密码时,SchTasks.exe 不显示键入的文本。 The task will be created under current logged-in user name.Please enter the password************ 然后 SchTasks.exe 显示一条消息表明已计划该任务: 成功:计划任务 "Security Script" 已成功创建。 查询显示命令计划的任务: TaskName Next Run Time Status========================= ======================== ==============Security Script 10:50:00 AM , 4/4/2001 schtasks create hourly 语法schtasks/create/tnTaskName/trTaskRun/sc hourly [/mo {1 - 365}] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划命令在每小时过五分的时候运行。下面的命令将计划 MyApp 程序从午夜过后五分钟起每小时运行一次。因为忽略了 /mo 参数,命令使用了小时计划的默认值,即每 (1) 小时。如果该命令在 12:05 A.M 之后生成,程序将在第二天才会运行。 schtasks /create /sc hourly /st 00:05:00 /tn "My App" /tr c:\apps\myapp.exe 计划命令每五小时运行一次下面的命令计划 MyApp 程序从 2001 年 3 月的第一天起每五小时运行一次。它使用 /mo 参数来指定间隔时间,使用 /sd 参数来指定起始日期。由于命令没有指定起始时间,当前时间被用作起始时间。 schtasks /create /sc hourly /mo 5 /sd 03/01/2001 /tn "My App" /tr c:\apps\myapp.exe schtasks create daily 语法schtasks/create/tnTaskName/trTaskRun/sc daily [/mo {1 - 365}] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划任务每天运行一次下面的范例计划 MyApp 程序在每天的 8:00 A.M. 运行一次,直到 2001 年 12 月 31 日结束。由于它忽略了 /mo 参数,所以使用默认间隔 1 来每天运行命令。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc daily /st 08:00:00 /ed 12/31/2001 计划任务每隔一天运行一次下面的范例计划 MyApp 程序从 2001 年 12 月 31 日起每隔一天在 1:00 P.M. (13:00) 运行。命令使用 /mo 参数来指定两 (2) 天的间隔。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc daily /mo 2 /st 13:00:00 /sd 12/31/2001 schtasks create weekly 语法schtasks/create/tnTaskName/trTaskRun/sc weekly [/d {MON - SUN | *}] [/mo {1 - 52}] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划任务每六周运行一次下面的命令计划 MyApp 程序在远程计算机上每六周运行一次。该命令使用 /mo 参数来指定间隔。它也使用 /s 参数来指定远程计算机,使用 /ru 参数来计划任务以用户的 Administrator 帐户权限运行。因为忽略了 /rp 参数,SchTasks.exe 会提示用户输入 Administrator 帐户密码。 另外,因为命令是远程运行的,所以命令中所有的路径,包括到 MyApp.exe 的路径,都是指向远程计算机上的路径。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc weekly /mo 6 /s Server16 /ru Admin01 计划任务每隔一周在周五运行下面的命令计划任务每隔一周在周五运行。它使用 /mo 参数来指定两周的间隔,使用 /d 参数来指定是一周内的哪一天。如计划任务在每个周五运行,要忽略 /mo 参数或将其设置为 1。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc weekly /mo 2 /d FRI schtasks create monthly 语法
范例计划任务在每月的第一天运行下面的命令计划 MyApp 程序在每月的第一天运行。因为默认修饰符是 none(即:没有修饰符),默认天是第一天,默认的月份是每个月,所以该命令不需要任何其它的参数。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc monthly 计划任务在每月的最后一天运行下面的命令计划 MyApp 程序在每月的最后一天运行。它使用 /mo 参数指定在每月的最后一天运行程序,使用通配符 (*) 与 /m 参数表明在每月的最后一天运行程序。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc monthly /mo lastday /m * 计划任务每三个月运行一次下面的命令计划 MyApp 程序每三个月运行一次。.它使用 /mo 参数来指定间隔。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc monthly /mo 3 计划任务在每月的第二个周日运行下面的命令计划 MyApp 程序在每月的第二个周日运行。它使用 /mo 参数指定是每月的第二周,使用 /d 参数指定天。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc monthly /mo SECOND /d SUN 计划任务在五月和六月的第 15 天运行。下面的命令计划 MyApp 程序在五月 15 日和六月 15 日的 3:00 PM (15:00) 运行。它使用 /d 参数来指定日期,使用 /m 参数指定月份。它也使用 /st 参数来指定开始时间。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc monthly /d 15 /m MAY,JUN /st 15:00:00 schtasks create once 语法schtasks/create/tnTaskName/trTaskRun/sc once/stStartTime/sdStartDate [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划任务运行一次下面的命令计划 MyApp 程序在 2002 年 1 月 1 日午夜运行一次。它使用 /ru 参数指定以用户的 Administrator 帐户权限运行任务,使用 /rp 参数为 Administrator 帐户提供密码。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc once /st 00:00:00 /sd 01/01/2002 /ru Admin23 /rp p@ssworD1 schtasks create onstart 语法schtasks/create/tnTaskName/trTaskRun/sc onstart [/sdStartDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划任务在每次系统启动的时候运行下面的命令计划 MyApp 程序在每次系统启动的时候运行,起始日期是 2001 年 3 月 15 日。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc onstart /sd 03/15/2001 schtasks create onlogon 语法schtasks/create/tnTaskName/trTaskRun/sc onlogon [/sdStartDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划任务在用户登录到远程计算机的时候运行下面的命令计划批处理文件在用户(任何用户)每次登录到远程计算机上的时候运行。它使用 /s 参数指定远程计算机。因为命令是远程的,所以命令中所有的路径,包括批处理文件的路径,都指定为远程计算机上的路径。 schtasks /create /tn "Start Web Site" /tr c:\myiis\webstart.bat /sc onlogon /s Server23 schtasks create onidle 语法schtasks/create/tnTaskName/trTaskRun/sc onidle/iIdleTime [/sdStartDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] 范例计划某项任务在计算机空闲的时候运行下面的命令计划 MyApp 程序在计算机空闲的时候运行。它使用必需的 /i 参数指定在启动任务之前计算机必需持续空闲十分钟。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc onidle /i 10 更多范例若要查看范例,请单击范例名称: 创建以 System 权限运行的任务 下面的命令计划 MyApp 程序以 NT Authority\System 帐户权限运行。在这个范例中,任务计划在每月的第一天运行,但对于以系统权限运行的任务可以使用所有的计划类型。 该命令使用 /ru "System" 参数指定系统安全上下文。因为系统任务不需要密码,所以忽略了 /rp 参数。 schtasks /create /tn "My App" /tr c:\apps\myapp.exe /sc monthly /d 1 /ru "System" 作为响应,SchTasks.exe 显示一个信息性消息和一个成功消息。它不提示输入密码。 信息:此任务将被创建于用户名下 ("NT AUTHORITY\SYSTEM")。成功:计划任务 "My App" 已成功创建。 创建运行多个程序的任务 每个任务只能运行一个程序。但是可以创建一个运行多个程序的批处理文件,然后计划一个任务来运行该批处理文件。下面的过程说明了这个方法:
|