UFT at和schtasks的比较(计划执行)

在windows里添加任务有很多方式,比较常用的是命令at和schtasks

而这连个命令的主要区别是什么呢?

 

at 命令在win7 中是不能将任务在前台执行的,所以很多朋友在win7中用at命令添加了任务,但到执行的时候发现只是打开了一个后台进程,及时加上 /interactive参数也没有效果,而schtasks命令在win7里就可以将任务在前台处理。

相反,如果是XP系统,则用schtasks命令不能在前台处理,反而用at命令加上/interactive参数到可以在前台执行,呵呵,挺奇怪的,其他的系统大家试试吧。

 

at 语法:

at [\\computername] time [/interactive] [/every:date[,...]| /next:date[,...]] command

\\computername      指定远程计算机。如果省略该参数,命令将安排在本地计算机

time      指定运行命令的时间。将时间以 24 小时标记(00:00 [午夜] 到 23:59)的方式表示为小时:分钟。

/interactive      允许作业与在作业运行时登录用户的桌面进行交互。

/every:date[,...]       在每个星期或月的指定日期(例如,每个星期四,或每月的第三天)运行命令。将 date 指定为星期的一天或多天 (M,T,W,Th,F,S,Su),或月的一天或多天(使用 1 到 31 的数字)。用逗号分隔多个日期项。如果省略了 date,将假定为该月的当前日期。

/next:date[,...]        在重复出现下一天(例如,下个星期四)时,运行指定命令将 date 指定为星期的一天或多天 (M,T,W,Th,F,S,Su),或月的一天或多天(使用 1 到 31 的数字)。用逗号分隔多个日期项。如果省略了 date,将假定为该月的当前日期。

command         指定要运行的 Windows 2000 命令、程序(.exe 或 .com 文件)或批处理程序(.bat 或 .cmd 文件)。当命令需要路径作为参数时,请使用绝对路径,也就是从驱动器号开始的整个路径。如果命令在远程计算机上,请指定服务器和共享名的 UNC 符号,而不是远程驱动器号。如果命令不是可执行 (.exe) 文件,必须在命令前加上 cmd /c,例如:  cmd /c dir > c:\test.out

 

at [\\computername] [[id] [/delete] | /delete [/yes]]

id  指定指派给已计划命令的识别码。

/delete  取消已计划的命令。如果省略了 id,计算机中已计划的命令将被全部取消。

/yes   当删除已计划的事件时,对系统的查询强制进行肯定的回答。

 

假如要在每天下午6点执行一个批处理文件,如下: at 18:00 /interactive /every:M,T,W,Th,F,S,Su d:\restart.bat

 

schtasks 语法

schtasks的语法可以通过键入 schtasks /?来查看

创建任务的语法可以通过schtasks /create /?来查看

下面举范例说明:

想添加一个任务,在每天下午6点执行,如下

schtasks /create /tn tomcat /tr e:\restart.bat /sc daily /st 18:00

又如:计划任务,将来某点开始运行某个命令

schtasks /create /tn driver1 /tr C:\testproject\driver1.vbs /sc once /st  21:22

/tn  任务名称

/tr  命令所在位置

/sc  执行方式,是只执行一次还是每天执行等,可选参数有:

计划类型 修饰符值 描述 MINUTE  1 - 1439  任务每 N 分钟运行一次。   HOURLY  1 - 23  任务每 N 小时运行一次。   DAILY  1 - 365  任务每 N 天运行一次。   WEEKLY  1 - 52  任务每 N 周运行一次。   ONCE  没有修饰符。  任务运行一次。   ONSTART  没有修饰符。  任务在启动时运行。   ONLOGON  没有修饰符。  /u 参数指定的用户登录时,运行任务。   ONIDLE  没有修饰符。  系统闲置 /i 参数(需要与 ONIDLE 一起使用)指定的分钟数之后运行任务。   MONTHLY  1 - 12  任务每 N 月运行一次。   MONTHLY  LASTDAY  任务在月份的最后一天运行。   MONTHLY  FIRST、SECOND、THIRD、FOURTH、LAST  与 /dDay 参数一起使用,并在特定的周和天运行任务。例如,在月份的第三个周三  

/st  执行时间点,win7中的格式hh:mm ,xp中的格式为hh:mm:ss

 

另附:taskkill语法

通过进程名称来杀死进程:

taskkill /f /im java.exe

/f  强制杀死

/im  进程名

更多详细语法请执行taskkill /?

 

在一个批处理中执行两个批处理的格式

start /d "d:\dir1"  a.bat start /d "d:\dir2"  b.bat

=============================================================================

http://zzjnet.blog.51cto.com/323001/132136/

 

用schtasks.exe

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]     [/M months] [/I idletime] /TN taskname /TR taskrun [/ST starttime]     [/RI interval] [ {/ET endtime | /DU duration} [/K] ]      [/SD startdate] [/ED enddate] [/IT] [/Z] [/F]

描述:     允许管理员在本地或远程系统上创建计划任务。

参数列表:     /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          改进计划类型以允许更好地控制计划重复                                    周期。有效值列于下面“修改者”部分中。

    /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 (24 小时时间) 例如 14:30 为                                    2:30 PM。默认到当前时间。

    /RI          interval          用分钟指定重复间隔。这无法应用于                                    已计划的类型: MINUTE, HOURLY,                                    ONSTART, ONLOGON, ONIDLE。                                    有效范围: 1 - 599940 分钟。                                    如果指定了 /ET 或 /DU,它会默认到                                    10 分钟。

    /ET          endtime           指定运行任务的结束时间。                                    时间格式是 HH:mm (24 小时时间)                                    例如 14:50 为 2:50 PM。这无法运用于                                    计划类型: ONSTART, ONLOGON, ONIDLE。

    /DU          duration          指定运行此任务的持续时间。                                    时间格式是 HHHH:mm。                                    这不适用于 /ET 和计划类型: ONSTART,                                     ONLOGON, ONIDLE。如果指定了 /RI,                                    那么默认为 1 小时。

    /K                             在结束时间或持续时间终止此任务。                                    这不适用于计划类型: ONSTART,                                    ONLOGON, ONIDLE。必须指定 /ET                                    或 /DU。

    /SD          startdate         指定第一次运行这个                                    任务的日期。格式是 yyyy/mm/dd。                                    默认为当前时间。这不适用于计划                                    类型: ONCE, ONSTART, ONLOGON,                                    ONIDLE.

    /ED          enddate           指定此任务运行的最后一天的日期。                                    格式是 yyyy/mm/dd。                                    这不适用于计划类型: ONCE, ONSTART,                                    ONLOGON, ONIDLE。

    /IT                            /RU 用户在此作业运行时登录才启                                    用此任务用交互方式运行。                                    用户登录后此任务才运行。

    /Z                             如果此任务没有计划再次运行,                                    会删除此任务。

    /F                             如果指定的任务已经存在,强行                                    创建此任务并不显示警告。

    /?                             显示该帮助消息。

修改者: 按计划类型的 /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。

示例:     ==> 在远程机器 "ABC" 上创建计划任务 "doc",         该机器每小时在 "runasuser" 用户下运行 notepad.exe。

        SCHTASKS /Create /S ABC /U user /P password /RU runasuser                  /RP runaspassword /SC HOURLY /TN doc /TR notepad

    ==> 在远程机器 "ABC" 上创建计划任务 "accountant",         在指定的开始日期和结束日期之间的开始时间和结束时间内,         每隔五分钟运行 calc.exe。

        SCHTASKS /Create /S ABC /U domain\user /P password /SC MINUTE                  /MO 5 /TN accountant /TR calc.exe /ST 12:00 /ET 14:00                  /SD 2002/12/30 /ED 2002/12/30 /RU runasuser /RP

 

    ==> 创建计划任务 "gametime",在每月的第一个星期天         运行“空当接龙”。

        SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN gametime                  /TR c:\windows\system32\freecell

    ==> 在远程机器 "ABC" 创建计划任务 "report",         每个星期运行 notepad.exe。

        SCHTASKS /Create /S ABC /U user /P password /RU runasuser                  /RP runaspassword /SC WEEKLY /TN report /TR notepad.exe

    ==> 在远程机器 "ABC" 创建计划任务 "logtracker",         每隔五分钟从指定的开始时间到无结束时间,         运行 notepad.exe。将提示输入 /RP         密码。

        SCHTASKS /Create /S ABC /U domain\user /P password /SC MINUTE                  /MO 5 /TN logtracker                  /TR c:\windows\system32\notepad.exe /ST 18:30                  /RU runasuser /RP

    ==> 创建计划任务 "gaming",每天从 12:00 点开始到         14:00 点自动结束,运行 freecell.exe。

        SCHTASKS /Create /SC HOURLY /TN gaming /TR c:\freecell /ST 12:00                  /ET 14:00 /K

=======================================================================

http://www.txwb.com/Article/serverHelp/rjjs/201008/75961.html wwj验证OK

系统定时关机[不用软件]

 

曾经在网上搜索过windowsXP下定时关机的方法,有很多人的回答都是说下载一个定时关机的软件。其实根本不需要这么麻烦,后来我发现windowsXP本身就自带有定时关机这个功能,而且有两种方法。

  方法一:使用at命令

  (1)"开始"->"运行"->键入"cmd"打开WindowsXP的命令行窗口;

  (2)在命令行窗口中输入如下的命令:

  at 13:35 shutdown -s -t 15

  命令解释:

  ①at命令的格式为:at 时间 需要运行的命令;

  ②13:35表示命令将要在13:35这个时间执行。时间的表示方法为:小时:分钟;

  ③"shutdown -s -t 15"是关闭计算的机的命令,其的-s表示关机,-t 15表示在关机之前有15秒的等待时间(它会以对话框的形式给出提示),如果改成-t 0则在关机之前不会给出任何提示便会立即关机。

  整条命今的完整意思就是:计算机将在13:35这个时间关机,在关机之前有15秒的等待时间。

  如果您想查看at命令的详细用法,可以在第(1)步打开的命令行窗口中输入如下命令:at -h即可。

  方法二:使用schtasks命令

  schtasks命令对at命令做了改进。它可以让关机命令在每天同一时间执行。

  (1)"开始"->"运行"->键入"cmd"打开WindowsXP的命令行窗口;

  (2)在命令行窗口中输入schtasks可以查看计算机当前有哪些计划执行的任务;

  (3)在命令行窗口中输入如下命令: wwj验证ok

  schtasks /create /tn shutXP11 /sc daily /st 23:00:00 /tr "shutdown -s -t 0"

  命令解释:

  ①schtasks命令的格式:schtasks /create /tn 任务名 /sc 任务类别 /st 命令开始时间 /tr 要运行的命令;

  ②/create表示要创建一个计划执行的任务;

  ③/tn shutXP11 表示任务的名称为"shutXP11",名称可以随意取;

  ④/st 23:00:00 表示命令将在23:00:00执行;时间的表示格式为:小时:分钟:秒。

  ⑤/sc daily 表示命令在每天的23:00:00都会执行一次;daily也可以换成minute,hourly等,分别表示每分钟执行一次,每小时执行一次;

  ⑥/tr "shutdown -s -t 0"表示所执行的命令为"shutdown -s -t 0",即关机命令。

  整条命令的完整意思就是:计算机在每天的23:00:00执行关机的命令,计划任务的名称为shutXP11。

  (4)如果您计划的任务不需要了,可以执行如下的删除命令:

  schtasks /delete /tn shutXP11

  其意思为:删除计划任务"shutXP11"。

  如果您想查看schtasks的详细用法,可以输入如命令:schtasks -h。

  最后,需要的注意的一点是,要使任务可以成功执行,计算机的"Task Scheduler"服务必需已经启动。启动的方法为:"开始"->"运行"->"输入services.msc"->打开"服务"窗口,在窗中找到"Task Scheduler",右键点击"属性",将启动类型设置为"自动",重启计算机即可。

posted @ 2016-07-11 09:09  alice云学习  阅读(786)  评论(0编辑  收藏  举报