使用 winget 工具來安裝和管理應用程式

winget命令列工具可讓使用者探索、安裝、升級、移除及設定Windows 10和Windows 11電腦上的應用程式。 此工具是 Windows 封裝管理員服務的用戶端介面。

安裝 winget

根據預設,Windows 封裝管理員 winget命令列工具會與Windows 11和新式版本的 Windows 10 搭配使用,作為應用程式安裝程式

如果您執行的是舊版 Windows 且未安裝應用程式安裝程式,您可以從 Microsoft Store 取得應用程式安裝程式。 如果已安裝,請確定已安裝最新版本。

應用程式安裝套裝程式含 winget 工具的生產版本。

注意

目前只有Windows 10 1709 (組建 16299) 或更新版本才支援winget命令列工具。

安裝 winget 預覽版本 [僅限開發人員]

若要嘗試最新的Windows 封裝管理員功能,請使用下列其中一種方式安裝winget命令列工具的最新預覽組建:

系統管理員考量

安裝程式行為可能會根據您是否以系統管理員權限執行 winget,而有所不同。

  • 如果在沒有系統管理員權限的情況下執行 winget,則可能需要提供某些應用程式的權限才能安裝。 當安裝程式執行時,Windows 會提示您提高權限。 如果您選擇不提高權限,應用程式將無法安裝。

  • 在系統管理員命令提示字元中執行 winget 時,您將不會看到應用程式需要的提高權限提示。 以系統管理員身分執行命令提示字元時,請務必小心,並且只安裝您信任的應用程式。

使用 winget

安裝應用程式安裝程式之後,您可以在命令提示字元中輸入 'winget' 來執行 winget

其中一個最常見的使用案例是搜尋並安裝最愛的工具。

  1. 若要搜尋工具,請輸入 winget search <appname>

  2. 確認您想要的工具可供使用之後,您就可以輸入 winget install <appname>安裝工具。 winget 工具會啟動安裝程式,並將應用程式安裝在您的電腦上。 winget 命令列

  3. 除了安裝和搜尋之外,winget 還提供一些其他命令,可讓您顯示應用程式的詳細資料變更來源驗證封裝。 如需完整的命令清單,請輸入:winget --helpwinget 說明

有些使用者回報了用戶端未在其 PATH 上 的問題

命令

目前的 winget 工具預覽版支援下列命令。

命令 描述
info 顯示系統 (版本號碼、架構、記錄位置等) 的中繼資料。 有助於進行疑難排解。
install 安裝指定的應用程式。
show 顯示指定應用程式的詳細資料。
source 新增、移除及更新 winget 工具所存取的 Windows 封裝管理員存放庫。
search 搜尋應用程式。
list 顯示已安裝的套件。
升級 升級指定的套件。
卸載 卸載指定的套件。
hash 產生安裝程式的 SHA256 雜湊。
validate 驗證資訊清單檔案以提交至 Windows 封裝管理員存放庫。
設定 開啟設定。
features 顯示實驗性功能的狀態。
出口 匯出已安裝套件的清單。
import 在檔案中安裝所有套件。

選項

winget工具支援下列選項。

選項 描述
-v, --version 傳回目前版本的 winget。
--info 提供 winget 上的所有詳細資訊,包括授權、隱私權聲明和已設定群組原則的連結。
-?, --help 顯示 winget 的其他說明。

支援的安裝程式格式

winget工具支援下列類型的安裝程式:

  • EXE (無 訊息SilentWithProgress 旗標)
  • INNO
  • NullSOFT
  • MSI
  • APPX
  • MSIX
  • 燒傷
  • 可擕式

以指令碼撰寫 winget

您可以撰寫批次腳本和 PowerShell 腳本來安裝多個應用程式。

@echo off  
Echo Install Powertoys and Terminal  
REM Powertoys  
winget install Microsoft.Powertoys  
if %ERRORLEVEL% EQU 0 Echo Powertoys installed successfully.  
REM Terminal  
winget install Microsoft.WindowsTerminal  
if %ERRORLEVEL% EQU 0 Echo Terminal installed successfully.   %ERRORLEVEL%

注意

撰寫指令碼後,winget 會依照指定的順序啟動應用程式。 當安裝程式傳回成功或失敗時,winget 將會啟動下一個安裝程式。 如果安裝程式啟動另一個程序,其可能會提前傳回 winget。 這會導致 winget 在先前的安裝程式完成之前,就安裝下一個安裝程式。

偵錯與疑難排解

winget 提供記錄來協助診斷問題。 如需記錄的疑難排解和詳細資料,請參閱 偵錯和疑難排解

缺少工具

如果 社群存放庫 不包含您的工具或應用程式,請將套件提交至我們的 存放庫。 新增您最愛的工具,以便您和其他人使用。

自訂 winget 設定

您可以藉由修改 settings.json檔案來設定 winget 命令列體驗。 如需詳細資訊,請參閱https://aka.ms/winget-settings。 請注意,這些設定仍處於實驗階段,而且尚未完成該工具的預覽版本。

開放原始碼詳細資訊

winget 工具是 GitHub 存放庫 https://github.com/microsoft/winget-cli/ 中提供的開放原始碼軟體。 用於建立用戶端的原始碼位於 src 資料夾

winget 的原始碼包含在 Visual Studio 2019 C++ 解決方案中。 若要正確建立解決方案,請安裝搭配 C++ 工作負載的 Visual Studio

我們歡迎您參與撰寫 GitHub 上的 winget 原始碼。 您必須先同意並簽署 Microsoft CLA。

疑難排解

winget-cli 存放庫會維護常見問題和常見錯誤的清單,以及如何解決的建議: