Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Windows 定時關機完全指南:shutdown 命令、at 排程、圖形介面、遠端關機、取消與進階參數

編輯:Windows XP 系統介紹

定時關機是伺服器維護窗口、下載完成後自動關機、節能管理、遠端批次管理的剛需。Windows 內建 shutdown.exe、at.exe (舊版)、工作排程器、PowerShell 提供多層次解決方案。本文系統整理命令參數、圖形操作、遠端控制、取消方法、進階場景腳本。

核心工具:shutdown.exe 參數完整對照

參數功能範例
/s關機shutdown /s
/r重新啟動shutdown /r
/g重新啟動並重啟已註冊應用 (Win8+)shutdown /g
/a中止關機/重啟shutdown /a
/l登出目前使用者shutdown /l (不可與 /m /t 合用)
/h休眠shutdown /h
/t xxx倒數秒數 (0-315360000,預設 30)shutdown /s /t 3600 (1小時後關機)
/c "msg"關機對話框顯示訊息 (最長 512 字元)shutdown /s /t 60 /c "系統將於 1 分鐘後關機進行維護"
/f強制關閉應用程式 (不提示儲存)shutdown /s /f
/m \\computer指定遠端電腦 (需管理權限、RPC/防火牆允許)shutdown /s /m \\SERVER01 /t 0
/d [p|u:]xx:yy關機原因代碼 (p=計畫, u=使用者定義, xx=主要, yy=次要)shutdown /s /d p:4:1 (計畫性應用程式維護)
/i顯示圖形介面 (遠端關機對話框),必須為第一個參數shutdown /i

常用場景命令速查

60 分鐘後自動關機 (倒數計時)
shutdown /s /t 3600
指定 22:00 關機 (at 排程,需排程服務啟動)
at 22:00 shutdown /s
指定 22:00 關機 (工作排程器,現代替代 at)
schtasks /create /sc once /tn "NightlyShutdown" /tr "shutdown /s /f" /st 22:00 /ru SYSTEM
取消已排定關機
shutdown /a (僅對 /t 倒數有效,at/schtasks 需刪除任務)
遠端關機同網段電腦
shutdown /s /m \\PC-NAME /t 0 /f
圖形介面批次遠端關機
shutdown /i → 新增電腦 → 選擇動作/倒數/訊息 → 確定

進階:PowerShell 定時關機腳本 (功能更強、物件導向)

# 1. 簡單倒數關機
Start-Sleep -Seconds 3600; Stop-Computer -Force

# 2. 每日 22:00 關機 (建立排程任務)
$action = New-ScheduledTaskAction -Execute 'shutdown.exe' -Argument '/s /f /t 0'
$trigger = New-ScheduledTaskTrigger -Daily -At 10:00PM
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
Register-ScheduledTask -TaskName "DailyShutdown" -Action $action -Trigger $trigger -Settings $settings -RunLevel Highest -Force

# 3. 遠端關機多台電腦 (需 WinRM/PSRemoting)
$servers = @("SRV01","SRV02","SRV03")
Invoke-Command -ComputerName $servers -ScriptBlock { shutdown /s /f /t 0 } -Credential (Get-Credential)

# 4. 智慧關機:偵測特定進程結束後關機 (如下載完成)
$process = "qBittorrent"
while (Get-Process -Name $process -ErrorAction SilentlyContinue) { Start-Sleep 60 }
shutdown /s /f /t 0 /c "偵測到 $process 結束,自動關機"

at.exe 與 schtasks.exe 差異與遷移

  • at.exe:舊版排程服務 (Schedule 服務),僅支援本機、無法指定執行身分、Win10/11 預設停用。at 22:00 shutdown /s 仍可用但不建議新腳本使用。
  • schtasks.exe / PowerShell ScheduledTask:現代任務排程器,支援觸發條件 (閒置、事件、登入)、執行身分 (SYSTEM/特定帳戶)、歷程記錄、遠端管理。所有新自動化請使用 schtasks/ScheduledTask。

遠端關機前置條件清單

  1. 目標電腦啟用「檔案與印表機共享」防火牆規則 (入站 TCP 445, 135, 139, 動態 RPC 埠)。
  2. 來源電腦與目標電腦同域/工作群組,或建立信任關係。
  3. 執行帳戶為目標電腦 Administrators 群組成員 (或具備「強制從遠端系統關機」使用者權限 SeRemoteShutdownPrivilege)。
  4. 目標電腦未啟用「使用者存取控制 (UAC) 遠端限制」 (註冊表 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\LocalAccountTokenFilterPolicy = 1)。

取消各類排程關機的方法

排程方式取消命令
shutdown /t xxx 倒數shutdown /a
at 排程at [任務ID] /delete 或 at /delete /yes (刪除全部)
schtasks / 工作排程器schtasks /delete /tn "TaskName" /f 或 GUI 刪除
PowerShell 排程任務Unregister-ScheduledTask -TaskName "TaskName" -Confirm:$false

安全與合規提醒

  • 生產伺服器嚴禁無人值守關機,需納入變更管理流程、通知相關方、驗證備份完成。
  • 遠端關機需記錄審計日誌 (事件 ID 1074, 6006, 6008),包含發起者、時間、原因代碼。
  • 防止惡意腳本濫用關機:限制 shutdown.exe 執行權限 (AppLocker/SRP 僅允許管理員)、監控異常關機事件。

從簡單的「一小時後關機」到企業級「跨網段批次維護窗口關機」,shutdown 系列工具提供了完整工具鏈。掌握參數組合、排程器現代化用法、遠端前置條件,您就能在任何場景下精準掌控電腦生命週期,避免「忘記關機」浪費電力或「誤關機」造成業務中斷。

Copyright © Windows教程網 All Rights Reserved