at計劃在指定時間和日期在計算機(jī)上運行命令和程序
2020-07-26 20:31:16
供稿:網(wǎng)友
at計劃在指定時間和日期在計算機(jī)上運行命令和程序。at 命令只能在“計劃”服務(wù)運行時使用。如果在沒有參數(shù)的情況下使用,則 at 列出已計劃的命令。
語法
at [//ComputerName] [{[ID] [/delete]|/delete [/yes]}]
at [[//ComputerName] hours:minutes [/interactive] [{/every:date[,...]|/next:date[,...]}] command]
參數(shù)
//computername
指定遠(yuǎn)程計算機(jī)。如果省略該參數(shù),則 at 計劃本地計算機(jī)上的命令和程序。
ID
指定指派給已計劃命令的識別碼。
/delete
取消已計劃的命令。如果省略了 ID,則計算機(jī)中所有已計劃的命令將被取消。
/yes
刪除已計劃的事件時,對來自系統(tǒng)的所有詢問都回答“是”。
hours:minutes
指定命令運行的時間。該時間用 24 小時制(即從 00:00 [午夜] 到 23:59)的 小時: 分鐘格式表示。
/interactive
對于在運行 command 時登錄的用戶,允許 command 與該用戶的桌面進(jìn)行交互。
/every:
在每個星期或月的指定日期(例如,每個星期四,或每月的第三天)運行 command 命令。
date
指定運行命令的日期。可以指定一周的某日或多日(即,鍵入 M、T、W、Th、F、S、Su)或一個月中的某日或多日(即,鍵入從 1 到31 之間的數(shù)字)。用逗號分隔多個日期項。如果省略了 date,則 at 使用該月的當(dāng)前日。
/next:
在下一個指定日期(比如,下一個星期四)到來時運行 command。
command
指定要運行的 Windows 命令、程序(.exe 或 .com 文件)或批處理程序(.bat 或 .cmd 文件)。當(dāng)命令需要路徑作為參數(shù)時,請使用絕對路徑,也就是從驅(qū)動器號開始的整個路徑。如果命令在遠(yuǎn)程計算機(jī)上,請指定服務(wù)器和共享名的通用命名協(xié)定 (UNC) 符號,而不是遠(yuǎn)程驅(qū)動器號。
/?
在命令提示符顯示幫助。
注釋
Schtasks 是功能更為強(qiáng)大的超集命令行計劃工具,它含有 at 命令行工具中的所有功能。對于所有的命令行計劃任務(wù),都可以使用 schtasks 來替代 at。有關(guān) schtasks 的詳細(xì)信息,請參閱“”。
使用 at
使用 at 命令時,要求您必須是本地 Administrators 組的成員。
加載 Cmd.exe
在運行命令之前,At 不會自動加載 Cmd.exe (命令解釋器)。如果沒有運行可執(zhí)行文件 (.exe),則在命令開頭必須使用如下所示的方法專門加載 Cmd.exe:
cmd /c dir > c:/test.out。
查看已計劃的命令
當(dāng)不帶命令行選項使用 at 時,計劃任務(wù)會出現(xiàn)在類似于以下格式的表中:
Status ID Day Time Command Line
OK 1 Each F 4:30 PM net send group leads status due
OK 2 Each M 12:00 AM chkstor > check.file
OK 3 Each F 11:59 PM backup2.bat
包含標(biāo)識號 (ID)
當(dāng)在命令提示下使用帶有標(biāo)識號 (ID) 的 at 命令時,單個任務(wù)項的信息會顯示在類似于下面的格式中:
Task ID: 1
Status:OK
Schedule:Each F
Time of Day:4:30 PM
Command:net send group leads status due
當(dāng)計劃帶有 at 的命令(尤其是帶有命令行選項的命令)后,要通過鍵入不帶命令行選項的 at 來檢查該命令語法是否輸入正確。如果顯示在“命令行”列中的信息不正確,請刪除該命令,然后重新鍵入它。如果還不正確,則可以在重新鍵入該命令時讓它少帶些命令行選項。
查看結(jié)果
使用 at 的已經(jīng)計劃的命令作為后臺程序運行。運行結(jié)果不會顯示在計算機(jī)上。要將輸出重定向到文件,請使用重定向符號 (>)。如果將輸出重定向到文件,則不論是在命令行還是在批處理文件中使用 at,都需要在重定向符號之前使用轉(zhuǎn)義符 (^)。例如,要重定向輸出到 Output.text 文件,則要鍵入:
at 14:45 c:/test.bat ^>c:/output.txt
執(zhí)行命令的當(dāng)前目錄為 systemroot 文件夾。
更改系統(tǒng)時間
在使用 at 命令計劃了要運行的命令之后,如果更改了計算機(jī)的系統(tǒng)時間,則通過鍵入不帶命令行選項的 at 可使 at 計劃程序與修改后的系統(tǒng)時間同步。
存儲命令
已計劃的命令存儲在注冊表中。這樣,如果重新啟動“計劃”服務(wù),則不會丟失計劃任務(wù)。
連接到網(wǎng)絡(luò)驅(qū)動器
對于需要訪問網(wǎng)絡(luò)的計劃作業(yè),請不要使用已重新定向的驅(qū)動器。“計劃”服務(wù)可能無法訪問這些重定向的驅(qū)動器,或者,在該計劃任務(wù)運行時如果有其他用戶登錄,則這些重定向的驅(qū)動器可能不會出現(xiàn)。因此,對于計劃作業(yè),請使用 UNC 路徑。例如:
at 1:00pm my_backup //server/share
請不要使用下述語法(其中 x: ?表示由用戶建立的連接):
at 1:00pm my_backup x:
如果計劃了一個使用驅(qū)動器號的 at 命令來連接共享目錄,則應(yīng)包含一個 at 命令以使在完成該驅(qū)動器的使用時斷開與驅(qū)動器的連接。如果不能斷開與驅(qū)動器的連接,則在命令提示下,所指派的驅(qū)動器號將不可用。
范例
要顯示 Marketing 服務(wù)器上已計劃的命令列表,請鍵入:
at //marketing
要了解服務(wù)器 Corp 上標(biāo)識號為 3 的命令的詳細(xì)信息,請鍵入:
at //corp 3
要計劃在上午 8:00 于 Corp 服務(wù)器上運行網(wǎng)絡(luò)共享命令,并將該列表重定向到 Maintenance 服務(wù)器的 Corp.txt 文件(位于 Reports 共享目錄下)中,請鍵入:
at //corp 08:00 cmd /c "net share reports=d:/marketing/reports >> //maintenance/reports/corp.txt"
為了在每五天后的午夜將 Marketing 服務(wù)器的硬盤驅(qū)動器備份到磁帶驅(qū)動器,首先創(chuàng)建名為 Archive.cmd 的批處理程序(它含有備份命令),然后計劃該批處理程序的運行,為此請鍵入:
at //marketing 00:00 /every:5,10,15,20,25,30 archive
要取消當(dāng)前服務(wù)器上已計劃的所有命令,請按下述方法清除 at 計劃信息:
at /delete
如果要運行的命令不是可執(zhí)行 (.exe) 文件,請按如下所示的方法在該命令之前使用 cmd /c 來加載 Cmd.exe:
cmd /c dir > c:/test.out。