settings 命令 (winget)

winget 工具的 settings 命令可讓您自訂 Windows 封裝管理員用戶端體驗。 您可以變更預設值,並試用您用戶端中啟用的實驗性功能。

settings 命令會啟動預設文字編輯器。 Windows 預設會啟動 [記事本] 做為選項。 我們建議使用 Visual Studio Code 之類的工具。

注意

您可以輸入 winget install Microsoft.VisualStudioCode,輕鬆地安裝 Visual Studio Code

別名

此命令提供下列別名:

  • config

使用 winget settings 命令

啟動您的預設 JSON 編輯工具:winget settings

當您第一次啟動設定時,將不會指定任何設定。 在 JSON 檔案頂端,我們提供一個連結,您可以在其中探索最新的實驗功能和設定。

下列程式碼片段是您想要啟用或修改其中一些實驗功能和設定時,您設定檔的範例。

{
    "$schema": "https://aka.ms/winget-settings.schema.json",

    // For documentation on these settings, see: https://aka.ms/winget-settings
    "experimentalFeatures": {
	  "dependencies": true,
	  "directMSI": false,
	  "zipInstall": false,
    },
    "visual": {
        "progressBar": "rainbow"
    },
    "source": {
        "autoUpdateIntervalInMinutes": 5
    },
}

我們也定義了設定檔案的結構描述。 如果您的 JSON 編輯器支援 JSON 結構描述,這可讓您使用 TAB 來探索設定和語法。

注意

實驗性功能僅適用於預覽組建。 您可以在 GitHub 存放庫中找到取得預覽組建的指示。

正在更新設定

下列設定適用於 Windows 封裝管理員的 1.0 版。

來源設定

這些 source 設定牽涉到 WinGet 來源的設定。

"source": {
    "autoUpdateIntervalInMinutes": 3
},

autoUpdateIntervalInMinutes

正整數代表更新間隔 (以分鐘為單位)。 僅在使用來源時,才會檢查更新。 零會停用檢查來源的更新。 任何其他值都無效。

  • 停用:0
  • 預設值:5

若要手動更新來源,請使用 winget source update

視覺設定

這些 visual 設定牽涉到 WinGet 所顯示的視覺元素

"visual": {
    "progressBar": "accent"
},

progressBar

引數未指定 WinGet 時所顯示的進度列色彩。

  • 輔色 (預設)
  • 復古
  • 彩虹

installBehavior 設定

這些 installBehavior 設定會影響安裝和升級的預設行為 (如果適用) 封裝。

disableInstallNotes

disableInstallNotes 行為會影響安裝成功之後是否顯示安裝附註。 如果值未設定或無效,則預設為 false

    "installBehavior": {
        "disableInstallNotes": true
    },

portablePackageUserRoot setting

portablePackageUserRoot 設定會影響封裝安裝在 User 範圍下的預設根目錄。 此設定僅適用於具有 portable 安裝程式類型的封裝。 如果值未設定或無效,則預設為 %LOCALAPPDATA%/Microsoft/WinGet/Packages/

注意:此設定值必須是絕對路徑。

    "installBehavior": {
        "portablePackageUserRoot": "C:/Users/FooBar/Packages"
    },

portablePackageMachineRoot setting

portablePackageMachineRoot 設定會影響封裝安裝在 Machine 範圍下的預設根目錄。 此設定僅適用於具有 portable 安裝程式類型的封裝。 如果值未設定或無效,則預設為 %PROGRAMFILES%/WinGet/Packages/

注意:此設定值必須是絕對路徑。

    "installBehavior": {
        "portablePackageMachineRoot": "C:/Program Files/Packages/Portable"
    },

喜好設定和需求設定

preferencesrequirements 底下,某些設定會重複。

  • preferences 設定會影響選擇要處理的選項時,各種可用選項的排序方式。 例如,封裝安裝的預設範圍是針對目前的使用者,但如果不是選項,則會選擇電腦層級安裝程式。
  • requirements 設定會篩選選項,可能會導致空白清單和安裝失敗。 在上一個範例中,使用者範圍需求不會造成任何適用的安裝程式和錯誤。

在命令列上傳遞的任何引數都會有效地覆寫該命令持續時間的比對 requirement 設定。

範圍 (scope)

scope 行為會影響為目前使用者或整部電腦安裝封裝之間的選擇。 比對參數為 --scope,並使用相同的值 (usermachine)。 請參閱關於封裝安裝範圍的已知問題

"installBehavior": {
    "preferences": {
        "scope": "user"
    }
},

地區設定

locale 行為會影響根據安裝程式地區設定選擇的安裝程式。 比對參數為 --locale,並使用 bcp47 語言標記。

"installBehavior": {
    "preferences": {
        "locale": [ "en-US", "fr-FR" ]
    }
},

架構

architectures 行為會影響安裝封裝時將選取哪些架構。 比對參數為 --architecture。 請注意,只能選取與您系統相容的架構。

    "installBehavior": {
        "preferences": {
            "architectures": ["x64", "arm64"]
        }
    },

installerTypes

installerTypes 行為會影響安裝套件時將選取的安裝程式類型。 比對參數為 --installer-type

    "installBehavior": {
        "preferences": {
            "installerTypes": ["msix", "msi"]
        }
    },

uninstallBehavior

這些 uninstallBehavior 設定會影響解除安裝的預設行為 (如果適用) 封裝。

purgePortablePackage

purgePortablePackage 行為會影響解除安裝可攜式封裝的預設行為。 如果設定為 true,解除安裝將會移除與封裝相關的 portable 所有檔案和目錄。 此設定僅適用於具有 portable 安裝程式類型的封裝。 如果值未設定或無效,則預設為 false

    "uninstallBehavior": {
        "purgePortablePackage": true
    },

downloadBehavior

downloadBehavior 設定會影響下載套件的預設行為。

defaultDownloadDirectory

defaultDownloadDirectory 設定會影響下載套件的預設目錄。 如果值未設定或無效,則預設為 %USERPROFILE%/Downloads

注意:此設定值必須是絕對路徑。

    "downloadBehavior": {
        "defaultDownloadDirectory": "C:/Users/FooBar/Downloads"
    },

遙測設定

telemetry 設定可控制 winget 是否會在 Windows 的預設安裝上寫入可能傳送給 Microsoft 的 ETW 事件。

請參閱遙測的詳細資料,以及我們的主要隱私權聲明

disable

"telemetry": {
    "disable": true
},

如果設定為 true,則 telemetry.disable 設定會使程式無法寫入任何事件。

網路設定

這些 network 設定會影響 winget 使用網路來擷取封裝和中繼資料的方式。

下載程式

downloader 設定可控制下載封裝時所使用的程式碼。 預設值為 default,這可能是根據我們判斷的任何選項。

wininet 會使用 WinINet API,而 do 會使用傳遞最佳化服務。

"network": {
    "downloader": "do"
}

記錄設定

logging 設定會控制記錄檔中的詳細資料層級。 --verbose-logs 將會覆寫此設定,並且一律建立詳細資訊記錄檔。

"logging": {
    "level": "verbose"
}

level

下列記錄層級可供使用。 如果值未設定或無效,則預設為 info

  • verbose
  • info
  • warning
  • error
  • critical

啟用實驗性功能

若要探索有哪些實驗性功能可供使用,請移至 https://aka.ms/winget-settings,您可以在此查看可供您使用的實驗性功能。