開機時讓Windows Terminal自動背景常駐不跳出視窗

主要是為了讓WSL2中的Docker能夠在開機時自動執行。

注意

本文由 Gemini 3 Pro 語言模型產生。

目標:開機自動啟動 Windows Terminal,不顯示視窗,直接縮小至右下角通知列。

1. 設定 Windows Terminal 行為

確保 Terminal 知道當它最小化時應隱藏至通知列,而非留在工作列。

  1. 開啟 Windows Terminal,按 Ctrl + , 進入 [設定]
  2. 在左側選單選擇 [啟動]
  3. 關閉 在電腦啟動時啟動(Launch on machine startup)。
    • 目的:避免系統開機時與腳本衝突,導致多開一個視窗。
  4. 在左側選單選擇 [外觀]
  5. 開啟 一律在通知區域中顯示圖示(Minimize to notification area)。
  6. 開啟 將終端機最最小化時,隱藏通知區域中的終端機(Hide Terminal in the notification area when it is minimized)。
    • 目的:當視窗最小化時,會從下方「工作列」消失,只留在右下角「通知列」。
  7. 儲存設定。

2. 建立 VBScript 啟動腳本

利用 VBScript 隱藏啟動時的黑窗,並模擬按鍵將其最小化。

將以下內容存成文字檔,並將副檔名改為 .vbs(例如 startup_wt.vbs):

Set WshShell = CreateObject("WScript.Shell")

' 參數 0 代表隱藏視窗啟動 (雖然 UWP 應用程式仍可能閃一下,但此參數有助於抑制)
WshShell.Run "wt.exe", 0, False

' 等待 2 秒確保程式已載入 (電腦較慢者可設為 3000 或 5000)
WScript.Sleep 2000

' 確保焦點在 Terminal 上
WshShell.AppActivate "Windows Terminal"

' 模擬按下 Alt + Space + N (視窗系統選單 -> 最小化)
WshShell.SendKeys "% n"

3. 部署到開機啟動

  1. 按下 Win + R 開啟執行對話框。
  2. 輸入 shell:startup 並按下確定(會開啟使用者的「啟動」資料夾)。
  3. 將剛剛建立的 startup_wt.vbs 檔案放入此資料夾。

測試:將 Windows 登出再登入(或重開機),Terminal 應該會安靜地出現在右下角通知列。