萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦基礎知識 >  >> 電腦入門

Windows AT 指令完整參考:排程任務自動化實戰

AT 是 Windows 內建的命令列排程工具(Windows 10/11 仍保留相容),適用於簡單的一次性或週期性任務排程。雖然現代環境建議使用 schtasks 或工作排程器 GUI,但 AT 指令在舊版相容、腳本快速部署、Server Core 環境仍具實用價值。

語法總覽

AT [\\電腦名] [ [識別碼] [/DELETE] | /DELETE [/YES] ]
AT [\\電腦名] 時間 [/INTERACTIVE] [ /EVERY:日期[,...] | /NEXT:日期[,...] ] "命令"

參數詳細說明

參數說明範例
\\電腦名指定遠端電腦(需 RPC 權限),省略為本機\\SRV01
識別碼排程任務唯一 ID(由系統自動指派)1, 5
/DELETE刪除指定 ID 或所有任務(搭配 /YES 跳過確認)AT 1 /DELETE, AT /DELETE /YES
/YES刪除所有任務時不提示確認AT /DELETE /YES
時間執行時間(24小時制 HH:MM)14:30, 03:00
/INTERACTIVE允許任務與當前登入用戶桌面互動(需 Session 0 隔離相容)AT 14:30 /INTERACTIVE "notepad.exe"
/EVERY:日期週期性執行:週幾(M,T,W,Th,F,S,Su)或日期(1-31),預設每月今天/EVERY:M,W,F, /EVERY:1,15
/NEXT:日期下一次指定日期執行(下個週一、下個月 1 號)/NEXT:M, /NEXT:15
"命令"要執行的指令/批次檔/程式(含路徑與參數),需雙引號括住"C:\Scripts\backup.bat"

實戰範例

範例 1:每日 02:00 執行備份腳本

AT 02:00 /EVERY:M,T,W,Th,F,S,Su "C:\Scripts\daily_backup.bat >> C:\Logs\backup_%DATE%.log 2>&1"

範例 2:下週一 03:00 執行系統更新腳本(互動模式)

AT 03:00 /NEXT:M /INTERACTIVE "C:\Windows\System32\wuauclt.exe /detectnow"

範例 3:每月 1 號 04:00 清理暫存檔

AT 04:00 /EVERY:1 "cmd /c del /q /f /s C:\Temp\* & for /d %i in (C:\Temp\*) do rd /s /q \"%i\""

範例 4:查看/刪除現有任務

AT                    # 列出本機所有排程任務
AT \\SRV01            # 列出遠端伺服器任務
AT 3 /DELETE          # 刪除 ID=3 的任務
AT /DELETE /YES       # 刪除所有任務(無提示)

關鍵限制與避坑指南

  • 服務依賴:需啟用 Task Scheduler (Schedule) 服務(services.msc → 啟動類型:自動)。
  • 權限模型:AT 建立的任務以 System 權限 執行,無法存取網路磁碟機(需在批次檔內 net use 掛載)。
  • Session 0 隔離:Vista/Win7 以降,/INTERACTIVE 無法正常顯示 GUI 於用戶桌面,僅適用於主控台應用。
  • 時間格式:嚴格 24 小時制,無 AM/PM。
  • 命令長度:單行 ≤ 260 字元,複雜邏輯請寫入 .bat/.cmd/.ps1 再呼叫。
  • 不支援:秒級排程、隨機延遲、事件觸發、條件判斷(網路/電源/閒置),請改用 schtasks。

現代替代方案:schtasks 對照表

AT 功能schtasks 等效語法
每日 02:00schtasks /create /tn "DailyBackup" /tr "C:\Scripts\backup.bat" /sc daily /st 02:00 /ru SYSTEM
每週一三五/sc weekly /d MON,WED,FRI
每月 1 號/sc monthly /d 1
刪除任務schtasks /delete /tn "DailyBackup" /f
查詢任務schtasks /query /fo LIST /v
copyright © 萬盛學電腦網 all rights reserved