Install-Package
安裝一或多個軟體套件。
Syntax
Install-Package
[-Name] <String[]>
[-RequiredVersion <String>]
[-MinimumVersion <String>]
[-MaximumVersion <String>]
[-Source <String[]>]
[-Credential <PSCredential>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-ProviderName <String[]>]
[<CommonParameters>]
Install-Package
[-InputObject] <SoftwareIdentity[]>
[-Credential <PSCredential>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Install-Package
[-Credential <PSCredential>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-ConfigFile <String>]
[-SkipValidate]
[-Headers <String[]>]
[-FilterOnTag <String[]>]
[-Contains <String>]
[-AllowPrereleaseVersions]
[-Destination <String>]
[-ExcludeVersion]
[-Scope <String>]
[-SkipDependencies]
[<CommonParameters>]
Install-Package
[-Credential <PSCredential>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-ConfigFile <String>]
[-SkipValidate]
[-Headers <String[]>]
[-FilterOnTag <String[]>]
[-Contains <String>]
[-AllowPrereleaseVersions]
[-Destination <String>]
[-ExcludeVersion]
[-Scope <String>]
[-SkipDependencies]
[<CommonParameters>]
Install-Package
[-Credential <PSCredential>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-AllowPrereleaseVersions]
[-Scope <String>]
[-PackageManagementProvider <String>]
[-PublishLocation <String>]
[-ScriptSourceLocation <String>]
[-ScriptPublishLocation <String>]
[-Type <String>]
[-Filter <String>]
[-Tag <String[]>]
[-Includes <String[]>]
[-DscResource <String[]>]
[-RoleCapability <String[]>]
[-Command <String[]>]
[-AcceptLicense]
[-AllowClobber]
[-SkipPublisherCheck]
[-InstallUpdate]
[-NoPathUpdate]
[<CommonParameters>]
Install-Package
[-Credential <PSCredential>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllVersions]
[-Force]
[-ForceBootstrap]
[-WhatIf]
[-Confirm]
[-AllowPrereleaseVersions]
[-Scope <String>]
[-PackageManagementProvider <String>]
[-PublishLocation <String>]
[-ScriptSourceLocation <String>]
[-ScriptPublishLocation <String>]
[-Type <String>]
[-Filter <String>]
[-Tag <String[]>]
[-Includes <String[]>]
[-DscResource <String[]>]
[-RoleCapability <String[]>]
[-Command <String[]>]
[-AcceptLicense]
[-AllowClobber]
[-SkipPublisherCheck]
[-InstallUpdate]
[-NoPathUpdate]
[<CommonParameters>]
Description
Cmdlet Install-Package
會在本機電腦上安裝一或多個軟體套件。 如果您有多個軟體來源,請使用 Get-PackageProvider
和 Get-PackageSource
來顯示提供者的詳細資料。
重要
PackageManagement模組中包含的命令與 Visual Studio 套件管理員主控台中NuGet模組所提供的命令不同。 每個模組都有其他模組中無法使用的命令。 具有相同名稱的命令與其特定引數不同。 如需詳細資訊,請參閱 Visual Studio 套件管理員主控台的 PowerShell 參考 檔。
範例
範例 1:依套件名稱安裝套件
Cmdlet Install-Package
會安裝軟體套件及其相依性。
PS> Install-Package -Name NuGet.Core -Source MyNuGet -Credential Contoso\TestUser
Install-Package
會使用參數來指定套件名稱和來源。 Credential參數會使用具有安裝套件許可權的網域使用者帳戶。 命令會提示您輸入使用者帳戶密碼。
範例 2:使用Find-Package來安裝套件
在此範例中,傳 Find-Package
回的物件會向下傳送管線,並由 安裝 Install-Package
。
PS> Find-Package -Name NuGet.Core -Source MyNuGet | Install-Package
Find-Package
會使用 Name 和 Source 參數來尋找封裝。 物件會向下傳送管線,並在 Install-Package
本機電腦上安裝套件。
範例 3:藉由指定版本範圍來安裝套件
Install-Package
會使用 MinimumVersion 和 MaximumVersion 參數來指定軟體版本的範圍。
PS> Install-Package -Name NuGet.Core -Source MyNuGet -MinimumVersion 2.8.0 -MaximumVersion 2.9.0
Install-Package
會使用 Name 和 Source 參數來尋找套件。 MinimumVersion和MaximumVersion參數會指定一系列的軟體版本。 已安裝範圍中的最高版本。
參數
-AcceptLicense
AcceptLicense 會在安裝期間自動接受授權合約。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowClobber
覆寫與現有命令衝突的相關警告訊息。 覆寫與所安裝命令同名的現有命令。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowPrereleaseVersions
允許安裝標示為發行前版本的套件。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllVersions
Install-Package
會安裝套件的所有可用版本。 根據預設,只會安裝最新版本。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Command
指定一或多個搜尋 Install-Package
的命令。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConfigFile
指定包含組態檔的路徑。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
在執行 Cmdlet 前提示您確認。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Contains
Install-Package
如果 Contains 參數指定符合任何物件屬性值的值,則會取得 物件。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
指定有權存取電腦並執行命令的使用者帳戶。 輸入使用者名稱,例如User01、Domain01\User01,或輸入 Cmdlet 所產生的 Get-Credential
PSCredential物件。 如果您輸入使用者名稱,系統會提示您輸入密碼。
未指定 Credential 參數時, Install-Package
請使用目前的使用者。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Destination
指定輸入物件的路徑。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DscResource
指定所搜尋 Install-Package
的一或多個Desired State Configuration (DSC) 資源。 Find-DscResource
使用 Cmdlet 尋找 DSC 資源。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExcludeVersion
切換以排除資料夾路徑中的版本號碼。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Filter
指定要在 [名稱 ] 和 [ 描述 ] 屬性內搜尋的字詞。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FilterOnTag
指定篩選結果的標記,並排除不包含指定標籤的結果。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
強制執行命令而不要求使用者確認。 覆寫防止 Install-Package
成功的限制,但安全性除外。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ForceBootstrap
強制 PackageManagement 自動安裝指定套件的套件提供者。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Headers
指定封裝標頭。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Includes
指定是否 Install-Package
應該尋找所有封裝類型。 此參數可接受的值如下所示:
- Cmdlet
- DscResource
- 函式
- RoleCapability
- 工作流程
Type: | String[] |
Accepted values: | Cmdlet, DscResource, Function, RoleCapability, Workflow |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
接受管線輸入。 使用封裝的 SoftwareIdentity 類型來指定封裝。
Find-Package
會輸出 SoftwareIdentity 物件。
Type: | Microsoft.PackageManagement.Packaging.SoftwareIdentity[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-InstallUpdate
表示 Install-Package
安裝更新。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumVersion
指定您想要安裝的允許套件版本上限。 如果您未指定此參數, Install-Package
請安裝套件的最新版本。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MinimumVersion
指定您想要安裝的最小允許套件版本。 如果您未新增此參數, Install-Package
請安裝符合 MaximumVersion 參數所指定任何版本的套件最新版本。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
指定一或多個封裝名稱。 多個封裝名稱必須以逗號分隔。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoPathUpdate
NoPathUpdate 僅適用于 Install-Script
Cmdlet。 NoPathUpdate 是由提供者新增的動態參數,不支援 Install-Package
。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PackageManagementProvider
指定 PackageManagement 提供者的名稱。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProviderName
指定要設定套件搜尋範圍的一或多個套件提供者名稱。 您可以執行 Get-PackageProvider
來取得套件提供者名稱。
Type: | String[] |
Aliases: | Provider |
Accepted values: | Bootstrap, NuGet, PowerShellGet |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Proxy
指定要求的 Proxy 伺服器,而不是直接連線到網際網路資源。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProxyCredential
指定有權使用 Proxy 參數所指定 Proxy 伺服器的使用者帳戶。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PublishLocation
指定封裝發佈位置的路徑。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
指定您想要安裝之套件的確切允許版本。 如果您未新增此參數, Install-Package
請安裝符合 MaximumVersion 參數所指定任何版本的套件最新版本。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RoleCapability
指定角色功能的陣列。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Scope
指定要安裝封裝的範圍。 此參數可接受的值如下所示:
- CurrentUser
- AllUsers
Type: | String |
Accepted values: | CurrentUser, AllUsers |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptPublishLocation
指定腳本發佈位置的路徑。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptSourceLocation
指定腳本來源位置。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipDependencies
略過軟體相依性的安裝。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipPublisherCheck
可讓您取得比已安裝版本還新的套件版本。 例如,由信任的發行者以數位方式簽署但未數位簽署新版本的已安裝套件。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipValidate
略過驗證封裝認證的參數。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Source
指定一或多個套件來源。 多個套件來源名稱必須以逗號分隔。
您可以執行 Get-PackageSource
Cmdlet 來取得套件來源名稱。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Tag
指定要在套件中繼資料中搜尋的一或多個字串。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Type
指定是否要搜尋具有模組、腳本或兩者的套件。 此參數可接受的值如下所示:
- 模組
- 指令碼
- 全部
Type: | String |
Accepted values: | Module, Script, All |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
顯示執行 Cmdlet 時 Install-Package
會發生什麼情況。 Cmdlet 並不會執行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
Microsoft.PackageManagement.Packaging.SoftwareIdentity
您可以使用管線將 SoftwareIdentity 物件傳送至此 Cmdlet。
輸出
Microsoft.PackageManagement.Packaging.SoftwareIdentity
此 Cmdlet 會針對安裝的每個套件傳回 SoftwareIdentity 物件。
備註
在命令中包含套件提供者,可讓 Cmdlet 使用動態參數。 動態參數是套件提供者特有的。 Cmdlet Get-Help
會列出 Cmdlet 的參數集,並包含提供者的參數集。 例如, Install-Package
具有包含 、 AllowClobber
和 SkipPublisherCheck
的PowerShellGet參數集 -NoPathUpdate
。
重要
從 2020 年 4 月起,PowerShell 資源庫已不再支援傳輸層安全性 (TLS) 1.0 和 1.1 版。 如果您不是使用 TLS 1.2 或更高版本,您在嘗試存取 PowerShell 資源庫時將會收到錯誤。 使用下列命令來確保您使用的是 TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
如需詳細資訊,請參閱 PowerShell 部落格中的公告 \(英文\)。