Windows 排程工作(schtasks)指令
- UtilsWindows排程工作排程schtasksTask Scheduler作者:VincentCorgi約 1 分鐘閱讀
功能
說明 Windows schtasks 在命令列 查詢、建立、修改、刪除、立即執行 排程工作的方式,對應圖形介面的「工作排程器」。
情境
- 無法登入 GUI、要批次部署多台機器的排程、或想把現有排程匯出/複製成指令時用
schtasks。 - 需與腳本、CI 或遠端維護整合時,比純 GUI 好自動化。
查詢排程(/Query)
Code
schtasks /Query /FO LIST /V
/FO LIST 以清單格式輸出;/V 顯示詳細資訊(下次執行時間、狀態、作者等)。不帶 /FO 時預設為 TABLE。
Code
schtasks /Query /TN "<task_name>"
只查詢名為 TaskName 的單一工作;/TN 指定工作名稱。
Code
schtasks /Query /FO LIST /TN "\<folder>\<task_name>"
查詢放在資料夾底下的工作;路徑以 \ 開頭,例如 \Microsoft\Windows\Backup.
輸出範例(/FO LIST 節錄):
Code
TaskName: \<task_name>
Next Run Time: <date_time>
Status: Ready
Author: <hostname>\<username>
Task To Run: <script_path>
建立排程(/Create)
Code
schtasks /Create /TN "<task_name>" /TR "<script_path>" /SC DAILY /ST 02:00 /RU SYSTEM
建立每日 02:00 執行的排程;/TR 為要執行的程式或指令,/SC DAILY 為每日,/ST 開始時間,/RU 執行身分(SYSTEM 或 網域\使用者)。
Code
schtasks /Create /TN "<task_name>" /TR "notepad.exe" /SC ONLOGON /RU "%USERNAME%"
/SC ONLOGON 為使用者登入時觸發;/RU %USERNAME% 以目前使用者身分執行。
Code
schtasks /Create /TN "<task_name>" /TR "<script_path>" /SC ONCE /ST 23:00 /SD <date>
/SC ONCE 只執行一次;/SD 為開始日期(YYYY/MM/DD)。
常用 /SC:MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY、ONCE、ONSTART、ONLOGON、ONIDLE。
修改排程(/Change)
Code
schtasks /Change /TN "<task_name>" /ENABLE
啟用已停用的排程;/DISABLE 則停用。
Code
schtasks /Change /TN "<task_name>" /RU "<domain>\<user>" /RP "<password>"
修改執行身分與密碼;若改為系統帳號可 /RU SYSTEM,不需 /RP。
執行排程(/Run)
Code
schtasks /Run /TN "<task_name>"
立即執行指定排程一次;不影響原有排程時間。
結束工作(/End)
Code
schtasks /End /TN "<task_name>"
強制結束該排程目前正在執行的執行個體;若工作未在跑則無效。
刪除排程(/Delete)
Code
schtasks /Delete /TN "<task_name>" /F
刪除名為 <task_name> 的排程;/F 不提示確認。
Code
schtasks /Delete /TN "\<folder>\<task_name>" /F
刪除資料夾底下的工作;路徑需與建立或查詢時一致。
匯出/匯入(搭配 XML)
工作排程器可匯出工作為 XML,再於命令列匯入:
Code
schtasks /Create /TN "<task_name>" /XML "<xml_path>" /F
/F 覆蓋同名工作;XML 內已含觸發條件與動作,不需再給 /TR、/SC。
速查
| 用途 | 參數 | 說明 |
|---|---|---|
| 查詢 | /Query | 列出或查單一工作 |
| 建立 | /Create | 需 /TN、/TR、/SC |
| 修改 | /Change | 啟用/停用、改帳號 |
| 立即執行 | /Run | 觸發一次 |
| 結束 | /End | 結束執行中個體 |
| 刪除 | /Delete | 常加 /F 免確認 |
執行 schtasks /? 可看完整參數;需管理員權限時請以管理員身分開啟 CMD 或 PowerShell。