at命令全解
At计划在指定时间和日期在计算机上运行命令和程序。at命令只能在“计划”服务运行时使用。如果在没有参数的情况下使用,则at命令将列出已计划的命令。
语法
at[\\ComputerName][{|/delete}]
at[[\\ComputerName]Hours:Minutes[{/every/date[,...]|/next/date[,...]}]Command]
参数
\\ComputerName
指定远程计算机。如果省略该参数,则at命令将计划本地计算机上的命令和程序。
ID
指定指派给已计划命令的识别码。
/delete
取消已计划的命令。如果省略了ID,则计算机中所有已计划的命令将被取消。
/yes
当删除已计划的事件时,对来自系统的所有询问都进行肯定回答。
Hours:Minutes
指定命令运行的时间。将时间以24小时制式(即从00:00[午夜]到23:59)表示为Hours:Minutes。
/interactive
对于在运行Command时登录的用户,允许Command与该用户的桌面进行交互。
/every:
在每个星期或月的指定日期(例如,每个星期四,或每月的第三天)运行Command命令。
Date
指定运行命令的日期。可以指定一周的某日或多日(即,键入M、T、W、Th、F、S、Su)或一个月中的某日或多日(即,键入从1到31之间的数字)。用逗号分隔多个日期项。如果省略了Date,则at命令将使用该月的当前日期。
/next:
在下一个指定日期(例如,下一个星期四)到来时运行Command命令。
Command
指定要运行的Windows命令、程序(即.exe或.com文件)或批处理程序(即.bat或.cmd文件)。当命令需要路径作为参数时,请使用绝对路径,也就是从驱动器号开始的整个路径。如果命令在远程计算机上,请指定服务器和共享名的通用命名协定(UNC)符号,而不是远程驱动器号。
/?
在命令提示符下显示帮助。
注释
•Schtasks是另一个命令行计划工具,可以用来创建和管理计划任务。有关schtasks的更多信息,请参阅“相关主题”。
•使用at
使用at命令时,要求您必须是本地Administrators组的成员。
•加载Cmd.exe
在运行命令之前,at不会自动加载Cmd.exe(命令解释程序)。如果没有运行可执行文件(.exe),则在命令开头必须使用如下所示的方法专门加载Cmd.exe:
cmd/cdir>c:\test.out
•查看已计划的命令
当使用没有命令行选项的at时,计划任务会出现在类似于以下格式的表中:
StatusID DayTimeCommandLine
OK 1 EachF 4:30PM netsendgroupleadsstatusdue
OK 2 EachM 12:00AM chkstor>check.file
OK 3 EachF 11:59PM backup2.bat
•包含识别码(ID)
当在命令提示符下使用带有识别码(ID)的at命令时,单个任务项的信息将以类似于以下格式显示:
TaskID: 1
Status:OK
Schedule:EachF
TimeofDay:4:30PM
Command:netsendgroupleadsstatusdue
当计划带有at的命令(尤其是带有命令行选项的命令)后,要通过键入不带命令行选项的at来检查该命令语法是否输入正确。如果显示在“命令行”列中的信息不正确,请删除该命令,然后重新键入它。如果还不正确,则可以在重新键入该命令时让它少带些命令行选项
•查看结果
使用at的已经计划的命令作为后台程序运行。运行结果不会显示在计算机上。要将输出重定向到文件,请使用重定向符号(>)。如果将输出重定向到文件,则不论是在命令行还是在批处理文件中使用at,都需要在重定向符号之前使用转义符(^)。例如,要重定向输出到Output.text文件,则要键入:
at14:45c:\test.bat^>c:\output.txt
执行命令的当前目录为systemroot文件夹。
•更改系统时间
在使用at命令计划了要运行的命令之后,如果更改了计算机的系统时间,则通过键入不带命令行选项的at,可使at命令计划程序与修改后的系统时间同步。
•存储命令
已计划的命令存储在注册表中。这样,如果重新启动“计划”服务,则不会丢失计划任务。
•连接到网络驱动器
对于需要访问网络的计划作业,请不要使用已重新定向的驱动器。“计划”服务可能无法访问这些重定向的驱动器,或者在该计划任务运行时如果有其他用户登录,则这些重定向的驱动器可能不会出现。因此,对于计划作业,请使用UNC路径。例如:
at1:00pmmy_backup\\server\share
不要使用如下语法,其中x:表示用户建立的连接:
at1:00pmmy_backupx:
如果计划了一个使用驱动器号的at命令来连接共享目录,则应包含一个at命令以使在完成该驱动器的使用时断开与驱动器的连接。如果不能断开与驱动器的连接,则在命令提示符下所指派的驱动器号不可用。
•任务在72小时之后停止
在默认方式下,使用at命令安排的任务在72小时后停止。可以通过修改注册表来更改此默认值。
1.
启动注册表编辑器(regedit.exe)。
2.
找到并单击以下注册表项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Schedule
3.
在“编辑”菜单上,单击“添加值”,然后添加以下注册表值:值名称:AtTaskMaxHours数据类型:REG_DWORD基数:十进制值数据:0.在值数据字段中的0值表示无限制,不会停止。1到99之间的值表示小时数。
警告
•编辑注册表不当可能会严重损坏您的系统。在更改注册表之前,应备份计算机上任何有价值的数据。
•任务计划程序和at命令
可以使用“任务计划”文件夹查看或修改使用at命令创建的任务的设置。在使用at命令计划任务时,计划的任务将列在“任务计划”文件夹中,其名称举例如下:At3478。但是,如果通过“任务计划”文件夹修改at任务,则该任务将升级为普通计划任务。该任务在at命令中将不再可见,且at帐户设置也不再适用于该任务。需要明确地为该任务输入用户帐户和密码。
示例
要显示Marketing服务器上已计划的命令列表,请键入:
at\\marketing
要了解Corp服务器上识别码为3的命令的详细信息,请键入:
at\\corp3
要计划在上午8:00于Corp服务器上运行netshare命令,并将该列表重定向到Maintenance服务器的Corp.txt文件(位于Reports共享目录下)中,请键入:
at\\corp08:00cmd/c"netsharereports=d:\marketing\reports>>\\maintenance\reports\corp.txt"
要每隔5天在午夜将Marketing服务器的硬盘驱动器备份到磁带驱动器,首先创建名为Archive.cmd的批处理程序(它含有备份命令),然后计划该批处理程序的运行,为此请键入:
at\\marketing00:00/every:5,10,15,20,25,30archive
要取消当前服务器上已计划的所有命令,请按下述方法清除at计划信息:
at/delete
如果要运行的命令不是可执行(.exe)文件,请按下述方法在该命令之前使用cmd/c来加载Cmd.exe:
cmd/cdir>c:\test.out 就是不会用! 不 是 太 懂! 像这样好像不行,就例子看看, 呵呵
够我看一些时间了 还是不懂。。
页:
[1]