设为首页 收藏本站
查看: 7367|回复: 0

win7下计划任务schtasks使用详解及"错误:无法加载列资源"的解决方法1

[复制链接]

尚未签到

发表于 2015-5-17 12:00:29 | 显示全部楼层 |阅读模式
win7下计划任务schtasks使用详解及"错误:无法加载列资源"的解决方法1

2011-12-10 20:33  



  schtasks 命令简述:
  安排命令和程序,使其定期运行或在指定时间运行。向计划中添加任务和从中删除任务、根据需要启动和停止任务以及显示和更改计划的任务。
  在进行schtasks 这个计划任务命令的参数详解之前,先简要提出以下几点:
  1、SchTasks.exe 执行的操作类似于“控制面板”中“计划任务”中的操作。可以使用两种工具中的任一种来创建、删除、配置或显示计划任务。
http://onexin.iyunv.com/source/plugin/onexin_bigdata/file:///C:/Users/bran/AppData/Local/youdao/ynote/images/A678E0DDAAB74DAD92B5591C80BCAE5A/c107a1d8f2d3572c3858d8968a13632763d0c31e.jpeg
  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 计划任务参数 详解
  [
      注意:a. 命令行创建的计划任务有空格而不能创建的情况的解决方案:在含有看空格的参数或则路径前面加上 \"  进行转义,这样就ok     
      demo:  schtasks /create /sc minute /mo 30 /tn "finaltest" /tr \"d:program file\smth.bat" \"'20' '302'"
                                                                  ------------------2011-01-25 14:22
]
schtasks create   
创建新的计划任务。

语法
  schtasks/create/tnTaskName/trTaskRun/scschedule [/momodifier] [/dday] [/mmonth[,month...] [/iIdleTime] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]] /?

参数

/tnTaskName         指定任务的名称。/trTaskRun             指定任务运行的程序或命令。键入可执行文件、脚本文件或批处理文件的完全合格的路径和文件名。                               如果忽略该路径,SchTasks.exe 将假定文件在 Systemroot\System32 目录下。/scschedule           指定计划类型。有效值为 MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY、ONCE、ONSTART、ONLOGON、ONIDLE。  
值说明
  MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY
指定计划的时间单位。
  ONCE
任务在指定的日期和时间运行一次。
  ONSTART
任务在每次系统启动的时候运行。可以指定启动的日期,或下一次系统启动的时候运行任务。
  ONLOGON
每当用户(任意用户)登录的时候,任务就运行。可以指定日期,或在下次用户登录的时候运行任务。
  ONIDLE
只要系统空闲了指定的时间,任务就运行。可以指定日期,或在下次系统空闲的时候运行任务。
  

/momodifier指定任务在其计划类型内的运行频率。这个参数对于 MONTHLY 计划是必需的。对于 MINUTE、HOURLY、DAILY 或 WEEKLY 计划,这个参数有效,但也可选。默认值为 1。  计划类型
修饰符
说明
  MINUTE
11439
任务每 n 分钟运行一次。
  HOURLY
123
任务每 n 小时运行一次。
  DAILY
1365
任务每 n 天运行一次。
  WEEKLY
152
任务每 n 周运行一次。
  MONTHLY
112
任务每 n 月运行一次。
  LASTDAY
任务在月份的最后一天运行。
  FIRSTSECONDTHIRDFOURTHLAST
/dday 参数共同使用,并在特定的周和天运行任务。例如,在月份的第三个周三。
  

/ddirlist指定周或月的一天。只与 WEEKLY 或 MONTHLY 计划共同使用时有效。  计划类型
日期值
  WEEKLY
可选项。有效值是 MON ~ SUN 和 * (每一天)。MON 是默认值。
  MONTHLY
在使用 FIRST、SECOND、THIRD、FOURTH 或 LAST 修饰符 (/mo) 时,需要 MON ~ SUN 中的某个值。1 ~ 31 是可选的,只在没有修饰符或修饰符为 1 ~ 12 类型时有效。默认值是 1 (月份的第一天)。
  

/mmonth[,month...]指定一年中的一个月。有效值是 JAN ~ DEC 和 * (每个月)。/m 参数只对于 MONTHLY 计划有效。在使用 LASTDAY 修饰符时,这个参数是必需的。否则,它是可选的,默认值是 * (每个月)。/iInitialPageFileSize指定任务启动之前计算机空闲多少分钟。键入一个 1 ~ 999 之间的整数。这个参数只对于 ONIDLE 计划有效,而且是必需的。/stStartTime以 HH:MM:SS 24 小时格式指定时间。默认值是命令完成时的当前本地时间。/st 参数只对于 MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY 和 ONCE 计划有效。它只对于 ONCE 计划是必需的。/sdStartDateMM/DD/YYYY 格式指定任务启动的日期。默认值是当前日期。/sd 参数对于所有的计划有效,但只对于 ONCE 计划是必需的。/edEndDate指定任务计划运行的最后日期。此参数是可选的。它对于 ONCE、ONSTART、ONLOGON 或 ONIDLE 计划无效。默认情况下,计划没有结束日期。/sComputer指定远程计算机的名称或 IP 地址(带有或者没有反斜杠)。默认值是本地计算机。/u [domain\]user使用特定用户帐户的权限运行命令。默认情况下,使用已登录到运行 SchTasks 的计算机上的用户的权限运行命令。/ppassword指定在 /u 参数中指定的用户帐户的密码。如果使用 /u 参数,则需要该参数。/ru {[Domain\]User | "System"}使用指定用户帐户的权限运行任务。默认情况下,使用用户登录到运行 SchTasks 的计算机上的权限运行任务。  值
说明
  [domain\}User?
指定用户帐户。
  "System"""
指定操作系统使用的 NT Authority\System 帐户。
  

/pPassword指定用户帐户的密码,该用户帐户在 /u 参数中指定。如果在指定用户帐户的时候忽略了这个参数,SchTasks.exe 会提示您输入密码而且不显示键入的文本。使用 NT Authority\System 帐户权限运行的任务不需要密码,SchTasks.exe 也不会提示索要密码。/?在命令提示符显示帮助。
注释

    XOX
  • SchTasks.exe 不验证程序文件的位置或用户帐户密码。如果没有为用户帐户输入正确的文件位置或正确的密码,任务仍然可以创建,但不会运行。另外,如果帐户的密码更改或过期,而且没有更改存储在任务中的密码,那么任务也不会运行。
  • NT Authority\System 帐户没有交互式登录权限。用户看不到以系统权限运行的程序,不能与之交互。
  • 每个任务只运行一个程序。但是,可以创建一个批处理文件来启动多个任务,然后计划一个任务来运行该批处理文件。
  • 只要创建了任务就可对其测试。使用 run 操作来测试任务,然后从 SchedLgU.txt 文件 ( Systemroot\SchedLgU.txt ) 中查阅错误。

每个计划类型的语法和范例。
  若要查看该命令语法,请单击以下命令:
  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

语法

常规月计划语法schtasks/create/tnTaskName/trTaskRun/sc monthly [/mo {FIRST | SECOND | THIRD | FOURTH | LAST | LASTDAY] [/d {MON - SUN | 1 - 31}] [/m {JAN - DEC[,JAN - DEC...] | *}] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]]指定周的语法schtasks/create/tnTaskName/trTaskRun/sc monthly/mo {FIRST | SECOND | THIRD | FOURTH | LAST} /d {MON - SUN} [/m {JAN - DEC[,JAN - DEC...] | *}] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]]Lastday 语法schtasks/create/tnTaskName/trTaskRun/sc monthly/mo LASTDAY/m {JAN - DEC[,JAN- DEC...] | *} [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]]指定日期的语法schtasks/create/tnTaskName/trTaskRun/sc monthly/d {1 - 31} [/m {JAN - DEC[,JAN -DEC...] | *}] [/stStartTime] [/sdStartDate] [/edEndDate] [/scomputer [/u [domain\]user/ppassword]] [/ru {[Domain\]User | "System"} [/rpPassword]]
范例

计划任务在每月的第一天运行
  下面的命令计划 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" 已成功创建。
  创建运行多个程序的任务
  每个任务只能运行一个程序。但是可以创建一个运行多个程序的批处理文件,然后计划一个任务来运行该批处理文件。下面的过程说明了这个方法:


  • 创建一个启动要运行程序的批处理文件。  在这个范例中创建了一个启动“事件查看器”(Eventvwr.exe) 和“系统监视器”(Perfmon.exe) 的批处理文件。

    • 启动文本编辑器,例如“记事本”。
    • 键入每个程序的名称和指向可执行文件的完全合格的路径。在这种情况下,文件包含有下列语句。  C:\Windows\System32\Eventvwr.exe
      C:\Windows\System32\Perfmon.exe

    • 将文件存储为 MyApps.bat。


  • 使用 SchTasks.exe 创建一个运行 MyApps.bat 的任务。  下面的命令创建了 Monitor 任务,每当有人登录它就运行。它使用 /tn 参数命名任务,使用 /tr 参数运行 MyApps.bat。它使用 /sc 参数来指明 OnLogon 计划类型,使用 /ru 参数指定 Administrator 帐户。
      schtasks /create /tn Monitor /tr C:\MyApps.bat /sc onlogon /ru Reskit\Administrator
      该命令的结果是,每当用户登录到计算机,任务就启动“事件查看器”和“系统监视器”。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-67754-1-1.html 上篇帖子: 关于 win7 远程桌面的多用户问题 下篇帖子: Win7复制文件时出现:“您需要权限来执行操作!”(已解决!)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表