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

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

安裝 winget

Windows Package Manager winget 命令列工具可在 Windows 11 和現代版的 Windows 10 上取得,做為應用程式安裝程式的一部分。

您可以從 Microsoft Store 取得應用程式安裝程式。 如果已安裝,請確定其已更新為最新版本。

注意

winget 命令列工具目前僅在 Windows 10 1709 (組建 16299) 或更新版本上受支援。 該 winget 工具只有在您第一次以使用者身分登入 Windows 後才可用,進而觸發 Microsoft Store 將 Windows Package Manager 註冊為異非同步程序的一部分。 如果您最近第一次以使用者身分登入並發現尚未提供 winget,那麼您可以開啟 PowerShell 並輸入下列命令來要求這個 winget 註冊:Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe

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

WinGet 包含在 Windows 應用程式安裝程式中。 若要嘗試最新的 Windows Package Manager 功能,您可以使用下列其中一種方式來安裝預覽組建:

  • 下載最新的 winget 預覽版本。 閱讀 winget 預覽的版本資訊,以瞭解任何新功能。 安裝此套件會為您提供 WinGet 用戶端的預覽版本,但不會啟用從 Microsoft Store 自動更新新預覽版本的功能。

  • 使用 Microsoft 帳戶 (MSA)、公司、學校或 Azure Active Directory (AAD) 帳戶來註冊 Windows Insider Dev Channel。 Windows Insider Dev Channel 包含從 Microsoft Store 自動更新新預覽版本的功能。

  • 使用 Microsoft 帳戶 (MSA) 來註冊 Windows Package Manager Insiders Program。 新增您的 Microsoft 帳戶 (MSA) 後 (收到電子郵件通知後的幾天),您將從 Microsoft Store 收到新預覽版本的自動更新。

在 Windows 沙箱上安裝 winget

Windows 沙箱提供了一個輕量型桌面環境,可以安全地隔離執行應用程式。 安裝在 Windows 沙箱環境內的軟體會保持「沙箱化」,並與主機電腦分開執行。 Windows 沙箱不包含 winget,也不包含 Microsoft Store 應用程式,因此您必須從 GitHub 上的 winget 版本頁面下載最新的 winget 套件。

若要在 Windows 沙箱上安裝穩定的 winget 版本,請從 Windows PowerShell 命令提示字元中照著下列步驟執行:

$progressPreference = 'silentlyContinue'
Write-Information "Downloading WinGet and its dependencies..."
Invoke-WebRequest -Uri https://aka.ms/getwinget -OutFile Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
Invoke-WebRequest -Uri https://aka.ms/Microsoft.VCLibs.x64.14.00.Desktop.appx -OutFile Microsoft.VCLibs.x64.14.00.Desktop.appx
Invoke-WebRequest -Uri https://github.com/microsoft/microsoft-ui-xaml/releases/download/v2.8.6/Microsoft.UI.Xaml.2.8.x64.appx -OutFile Microsoft.UI.Xaml.2.8.x64.appx
Add-AppxPackage Microsoft.VCLibs.x64.14.00.Desktop.appx
Add-AppxPackage Microsoft.UI.Xaml.2.8.x64.appx
Add-AppxPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle

如果您想要預覽版本或不同版本的 Package Manager,請移至 https://github.com/microsoft/winget-cli/releases。 複製您偏好版本的 URL,並更新上面的 URI。

如需 Windows 沙箱的詳細資訊 (包括如何安裝沙箱及其使用的預期內容),請參閱 Windows 沙箱文件

系統管理員考量

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

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

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

使用 winget

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

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

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

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

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

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

命令

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

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

選項。

winget 工具支援下列選項。

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

支援的安裝程式格式

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

  • EXE (具有 SilentSilentWithProgress 旗標)
  • ZIP
  • INNO
  • NULLSOFT
  • MSI
  • WIX
  • APPX
  • MSIX
  • BURN
  • PORTABLE

以指令碼撰寫 winget

您可以使用下列語法,在單一命令中安裝多個應用程式。

USAGE: winget install <query1> <query2> ...

範例

winget install Microsoft.WindowsTerminal Microsoft.PowerToys Microsoft.VisualStudioCode

注意

撰寫指令碼後,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 存放庫維護常見問題和常見錯誤的清單,以及如何解決的相關建議: