Teilen über


Install-Package

Installiert ein oder mehrere Softwarepakete.

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>]

Beschreibung

Das Install-Package Cmdlet installiert ein oder mehrere Softwarepakete auf dem lokalen Computer. Wenn Sie über mehrere Softwarequellen verfügen, verwenden Get-PackageProvider Und Get-PackageSource zeigen Sie Details zu Ihren Anbietern an.

Wichtig

Die im PackageManagement-Modul enthaltenen Befehle unterscheiden sich von den Befehlen, die vom NuGet-Modul in der Paket-Manager-Konsole von Visual Studio bereitgestellt werden. Jedes Modul verfügt über Befehle, die in der anderen Nicht verfügbar sind. Befehle mit demselben Namen unterscheiden sich in ihren spezifischen Argumenten. Weitere Informationen finden Sie in der PowerShell-Referenzdokumentation für die Paket-Manager-Konsole von Visual Studio.

Beispiele

Beispiel 1: Installieren eines Pakets nach Paketname

Das Install-Package Cmdlet installiert ein Softwarepaket und dessen Abhängigkeiten.

PS> Install-Package -Name NuGet.Core -Source MyNuGet -Credential Contoso\TestUser

Install-Package verwendet Parameter zum Angeben des Paketnamens und der Quelle. Der Parameter "Credential " verwendet ein Domänenbenutzerkonto mit Berechtigungen zum Installieren von Paketen. Der Befehl fordert Sie zum Kennwort des Benutzerkontos auf.

Beispiel 2: Verwenden von Find-Package zum Installieren eines Pakets

In diesem Beispiel wird das zurückgegebene Find-Package Objekt an die Pipeline gesendet und von Install-Package.

PS> Find-Package -Name NuGet.Core -Source MyNuGet | Install-Package

Find-Package verwendet die Parameter "Name " und " Source ", um ein Paket zu suchen. Das Objekt wird an die Pipeline gesendet und Install-Package installiert das Paket auf dem lokalen Computer.

Beispiel 3: Installieren von Paketen durch Angeben eines Versionsbereichs

Install-Package verwendet die Parameter "MinimumVersion" und "MaximumVersion ", um einen Bereich von Softwareversionen anzugeben.

PS> Install-Package -Name NuGet.Core -Source MyNuGet -MinimumVersion 2.8.0 -MaximumVersion 2.9.0

Install-Package verwendet die Parameter Name und Source , um ein Paket zu finden. Die Parameter "MinimumVersion " und "MaximumVersion " geben einen Bereich von Softwareversionen an. Die höchste Version im Bereich wird installiert.

Parameter

-AcceptLicense

AcceptLicense akzeptiert während der Installation automatisch den Lizenzvertrag.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AllowClobber

Überschreibt Warnmeldungen zu Konflikten mit vorhandenen Befehlen. Überschreibt vorhandene Befehle, die denselben Namen haben wie befehle, die installiert werden.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AllowPrereleaseVersions

Ermöglicht die Installation von Paketen, die als Vorabversion gekennzeichnet sind.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AllVersions

Install-Package installiert alle verfügbaren Versionen des Pakets. Standardmäßig wird nur die neueste Version installiert.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Command

Gibt einen oder mehrere Befehle an, die Install-Package durchsucht werden.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ConfigFile

Gibt einen Pfad an, der eine Konfigurationsdatei enthält.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Contains

Install-Package ruft Objekte ab, wenn der Contains-Parameter einen Wert angibt, der mit einem der Eigenschaftswerte des Objekts übereinstimmt.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Credential

Gibt ein Benutzerkonto an, das über die Berechtigung zum Zugreifen auf den Computer verfügt und Befehle ausführt. Geben Sie einen Benutzernamen ein, z. B . "User01", " Domain01\User01", oder geben Sie ein PSCredential-Objekt ein, das Get-Credential vom Cmdlet generiert wird. Wenn Sie einen Benutzernamen eingeben, werden Sie zur Eingabe eines Kennworts aufgefordert.

Wenn der Parameter "Credential " nicht angegeben ist, Install-Package wird der aktuelle Benutzer verwendet.

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Destination

Gibt einen Pfad zu einem Eingabeobjekt an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DscResource

Gibt eine oder mehrere DSC-Ressourcen (Desired State Configuration) an, nach Install-Packagedenen gesucht wird. Verwenden Sie das Find-DscResource Cmdlet, um DSC-Ressourcen zu finden.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ExcludeVersion

Wechseln Sie, um die Versionsnummer im Ordnerpfad auszuschließen.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Filter

Gibt Ausdrücke an, die in den Eigenschaften Name und Description gesucht werden sollen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-FilterOnTag

Gibt ein Tag an, das Ergebnisse filtert und Ergebnisse ausschließt, die das angegebene Tag nicht enthalten.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Force

Erzwingt die Ausführung des Befehls, ohne eine Benutzerbestätigung zu verlangen. Setzt Einschränkungen außer Kraft, die den Erfolg verhindern Install-Package , mit Ausnahme der Sicherheit.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ForceBootstrap

Erzwingt PackageManagement die automatische Installation des Paketanbieters für das angegebene Paket.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Headers

Gibt die Paketheader an.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Includes

Gibt an, ob Install-Package alle Pakettypen gefunden werden sollen. Die zulässigen Werte für diesen Parameter sind wie folgt:

  • Cmdlet
  • DscResource
  • Funktion
  • RoleCapability
  • Arbeitsablauf
Typ:String[]
Zulässige Werte:Cmdlet, DscResource, Function, RoleCapability, Workflow
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Akzeptiert Eingaben aus der Pipeline. Gibt ein Paket mithilfe des SoftwareIdentity-Typs des Pakets an. Find-Package gibt ein SoftwareIdentity -Objekt aus.

Typ:Microsoft.PackageManagement.Packaging.SoftwareIdentity[]
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-InstallUpdate

Gibt an, dass Install-Package Updates installiert werden.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MaximumVersion

Gibt die maximal zulässige Paketversion an, die Sie installieren möchten. Wenn Sie diesen Parameter nicht angeben, Install-Package wird die neueste Version des Pakets installiert.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MinimumVersion

Gibt die mindestens zulässige Paketversion an, die Sie installieren möchten. Wenn Sie diesen Parameter nicht hinzufügen, wird die neueste Version des Pakets installiert, Install-Package die alle vom MaximumVersion-Parameter angegebenen Versionen erfüllt.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Name

Gibt einen oder mehrere Paketnamen an. Mehrere Paketnamen müssen durch Kommas getrennt werden.

Typ:String[]
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-NoPathUpdate

NoPathUpdate gilt nur für das Install-Script Cmdlet. NoPathUpdate ist ein dynamischer Parameter, der vom Anbieter hinzugefügt wird und von Install-Packagediesem nicht unterstützt wird.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PackageManagementProvider

Gibt den Namen des PackageManagement-Anbieters an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ProviderName

Gibt einen oder mehrere Paketanbieternamen an, auf die die Paketsuche angewendet werden soll. Sie können Paketanbieternamen abrufen, indem Sie das Get-PackageProvider Cmdlet ausführen.

Typ:String[]
Aliase:Provider
Zulässige Werte:Bootstrap, NuGet, PowerShellGet
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Proxy

Gibt einen Proxyserver für die Anforderung an, anstatt eine direkte Verbindung mit einer Internetressource herzustellen.

Typ:Uri
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ProxyCredential

Gibt ein Benutzerkonto an, das über die Berechtigung zum Verwenden des durch den Parameter Proxy angegebenen Proxyservers verfügt.

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PublishLocation

Gibt den Pfad zum veröffentlichten Speicherort eines Pakets an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-RequiredVersion

Gibt die genaue zulässige Version des Pakets an, das Sie installieren möchten. Wenn Sie diesen Parameter nicht hinzufügen, wird die neueste Version des Pakets installiert, Install-Package die alle vom MaximumVersion-Parameter angegebenen Versionen erfüllt.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-RoleCapability

Gibt ein Array von Rollenfunktionen an.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Scope

Gibt den Bereich an, für den das Paket installiert werden soll. Die zulässigen Werte für diesen Parameter sind wie folgt:

  • Aktueller Benutzer
  • AllUsers
Typ:String
Zulässige Werte:CurrentUser, AllUsers
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ScriptPublishLocation

Gibt den Pfad zum veröffentlichten Speicherort eines Skripts an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ScriptSourceLocation

Gibt den Speicherort der Skriptquelle an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SkipDependencies

Überspringt die Installation von Softwareabhängigkeiten.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SkipPublisherCheck

Ermöglicht es Ihnen, eine Paketversion zu erhalten, die neuer als Ihre installierte Version ist. Ein installiertes Paket, das von einem vertrauenswürdigen Herausgeber digital signiert ist, aber keine neue Version digital signiert ist.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SkipValidate

Wechseln, der die Überprüfung der Anmeldeinformationen eines Pakets überspringt.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Source

Gibt eine oder mehrere Paketquellen an. Mehrere Paketquellnamen müssen durch Kommas getrennt werden. Sie können Paketquellnamen abrufen, indem Sie das Get-PackageSource Cmdlet ausführen.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Tag

Gibt eine oder mehrere Zeichenfolgen an, nach der in den Paketmetadaten gesucht werden soll.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Type

Gibt an, ob nach Paketen mit einem Modul, einem Skript oder beidem gesucht werden soll. Die zulässigen Werte für diesen Parameter sind wie folgt:

  • Modul
  • Skript
  • Alle
Typ:String
Zulässige Werte:Module, Script, All
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was passiert, wenn Install-Package cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

Microsoft.PackageManagement.Packaging.SoftwareIdentity

Sie können ein SoftwareIdentity-Objekt an dieses Cmdlet weiterleiten.

Ausgaben

Microsoft.PackageManagement.Packaging.SoftwareIdentity

Dieses Cmdlet gibt ein SoftwareIdentity-Objekt für jedes Paket zurück, das es installiert.

Hinweise

Das Einschließen eines Paketanbieters in einen Befehl kann dynamische Parameter für ein Cmdlet verfügbar machen. Dynamische Parameter sind spezifisch für einen Paketanbieter. Das Get-Help Cmdlet listet die Parametersätze eines Cmdlets auf und enthält den Parametersatz des Anbieters. Verfügt beispielsweise über den PowerShellGet-Parametersatz, -NoPathUpdateInstall-Package der , , AllowClobberund SkipPublisherCheck.

Wichtig

Ab April 2020 unterstützt der PowerShell-Katalog die Tls-Versionen 1.0 und 1.1 nicht mehr. Wenn Sie TLS 1.2 oder höher nicht verwenden, wird beim Versuch, auf den PowerShell-Katalog zuzugreifen, eine Fehlermeldung angezeigt. Verwenden Sie den folgenden Befehl, um sicherzustellen, dass Sie TLS 1.2 verwenden:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Weitere Informationen finden Sie in der Ankündigung im PowerShell-Blog.