Freigeben über


Install-Module

Lädt ein oder mehrere Module aus einem Repository herunter und installiert sie auf dem lokalen Computer.

Syntax

NameParameterSet (Standard)

Install-Module
    [-Name] <String[]>
    [-MinimumVersion <String>]
    [-MaximumVersion <String>]
    [-RequiredVersion <String>]
    [-Repository <String[]>]
    [-Credential <PSCredential>]
    [-Scope <String>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-AllowClobber]
    [-SkipPublisherCheck]
    [-Force]
    [-AllowPrerelease]
    [-AcceptLicense]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

InputObject

Install-Module
    [-InputObject] <PSObject[]>
    [-Credential <PSCredential>]
    [-Scope <String>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-AllowClobber]
    [-SkipPublisherCheck]
    [-Force]
    [-AcceptLicense]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Beschreibung

Das Install-Module Cmdlet ruft ein oder mehrere Module ab, die bestimmte Kriterien aus einem Onlinerepository erfüllen. Das Cmdlet überprüft, ob Suchergebnisse gültige Module sind, und kopiert die Modulordner an den Installationsspeicherort. Installierte Module werden nach der Installation nicht automatisch importiert. Sie können filtern, welches Modul basierend auf den minimalen, maximalen und exakten Versionen der angegebenen Module installiert ist.

Wenn das installierte Modul denselben Namen oder dieselbe Version aufweist oder Befehle in einem vorhandenen Modul enthält, werden Warnmeldungen angezeigt. Nachdem Sie bestätigt haben, dass Sie das Modul installieren und die Warnungen außer Kraft setzen möchten, verwenden Sie die -Force Parameter.-AllowClobber Abhängig von Den Repositoryeinstellungen müssen Sie möglicherweise eine Aufforderung beantworten, um die Modulinstallation fortzusetzen.

In diesen Beispielen wird der PowerShell-Katalog als einziges registriertes Repository verwendet. Get-PSRepository zeigt die registrierten Repositorys an. Wenn Sie über mehrere registrierte Repositorys verfügen, verwenden Sie den -Repository Parameter, um den Namen des Repositorys anzugeben.

Beispiele

Beispiel 1: Suchen und Installieren eines Moduls

In diesem Beispiel wird ein Modul im Repository gefunden und das Modul installiert.

Find-Module -Name PowerShellGet | Install-Module

Der Find-ModuleParameter Name wird verwendet, um das PowerShellGet-Modul anzugeben. Standardmäßig wird die neueste Version des Moduls aus dem Repository heruntergeladen. Das Objekt wird an das Cmdlet Install-Module weitergeleitet. Install-Module installiert das Modul für alle Benutzer in $env:ProgramFiles\PowerShell\Modules.

Beispiel 2: Installieren eines Moduls anhand des Namens

In diesem Beispiel wird die neueste Version des PowerShellGet-Moduls installiert.

Install-Module -Name PowerShellGet

Der Install-ModuleParameter Name wird verwendet, um das PowerShellGet-Modul anzugeben. Standardmäßig wird die neueste Version des Moduls aus dem Repository heruntergeladen und installiert.

Beispiel 3: Installieren eines Moduls mit seiner Mindestversion

In diesem Beispiel wird die Mindestversion des PowerShellGet-Moduls installiert. Der Parameter MinimumVersion gibt die niedrigste Version des Moduls an, die installiert werden soll. Wenn eine neuere Version des Moduls verfügbar ist, wird diese Version für alle Benutzer heruntergeladen und installiert.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

Der Install-ModuleParameter Name wird verwendet, um das PowerShellGet-Modul anzugeben. Der Parameter MinimumVersion gibt an, dass Version 2.0.1 aus dem Repository heruntergeladen und installiert wird. Da Version 2.0.4 verfügbar ist, wird diese Version für alle Benutzer heruntergeladen und installiert.

Beispiel 4: Installieren einer bestimmten Version eines Moduls

In diesem Beispiel wird eine bestimmte Version des PowerShellGet-Moduls installiert.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

Der Install-ModuleParameter Name wird verwendet, um das PowerShellGet-Modul anzugeben. Der Parameter RequiredVersion gibt an, dass Version 2.0.0 für alle Benutzer heruntergeladen und installiert wird.

Beispiel 5: Installieren eines Moduls nur für den aktuellen Benutzer

In diesem Beispiel wird die neueste Version eines Moduls nur für den aktuellen Benutzer heruntergeladen und installiert.

Install-Module -Name PowerShellGet -Scope CurrentUser

Der Install-ModuleParameter Name wird verwendet, um das PowerShellGet-Modul anzugeben. Install-Module lädt die neueste Version von PowerShellGet in das Verzeichnis $home\Documents\PowerShell\Modulesdes aktuellen Benutzers herunter und installiert sie.

Parameter

-AcceptLicense

Für Module, die eine Lizenz erfordern, akzeptiert AcceptLicense während der Installation automatisch den Lizenzvertrag. Weitere Informationen finden Sie in Modulen, die Lizenzakzeptanz erfordern.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-AllowClobber

Überschreibt Warnmeldungen zu Installationskonflikten zu vorhandenen Befehlen auf einem Computer. Überschreibt vorhandene Befehle mit demselben Namen wie Befehle, die von einem Modul installiert werden. AllowClobber und Force können in einem Install-Module Befehl zusammen verwendet werden.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-AllowPrerelease

Ermöglicht ihnen die Installation eines Moduls, das als Vorabversion gekennzeichnet ist.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

NameParameterSet
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Confirm

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

Parametereigenschaften

Typ:SwitchParameter
Standardwert:False
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:vgl

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Credential

Gibt ein Benutzerkonto an, das über Berechtigungen zum Installieren eines Moduls für einen angegebenen Paketanbieter oder eine angegebene Quelle verfügt.

Parametereigenschaften

Typ:PSCredential
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-Force

Installiert ein Modul und setzt Warnmeldungen zu Modulinstallationskonflikten außer Kraft. Wenn auf dem Computer bereits ein Modul mit demselben Namen vorhanden ist, ermöglicht Force die Installation mehrerer Versionen. Wenn ein Modul mit demselben Namen und derselben Version vorhanden ist, überschreibt Force diese Version. Force und AllowClobber können in einem Install-Module Befehl zusammen verwendet werden.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-InputObject

Wird für Pipelineeingaben verwendet. Ein Fehler wird ausgelöst, wenn ein direkt an InputObject bereitgestellter Wert. Verwenden Sie die Pipeline, um Objekte mit dem InputObject-Parameter zu übergeben.

Parametereigenschaften

Typ:

PSObject[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

InputObject
Position:0
Obligatorisch:True
Wert aus Pipeline:True
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-MaximumVersion

Gibt die maximale Version eines einzelnen zu installierenden Moduls an. Die installierte Version muss kleiner oder gleich MaximumVersion sein. Wenn Sie mehrere Module installieren möchten, können Sie MaximumVersion nicht verwenden. MaximumVersion und RequiredVersion können nicht im selben Install-Module Befehl verwendet werden.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

NameParameterSet
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-MinimumVersion

Gibt die Mindestversion eines zu installierenden Moduls an. Die installierte Version muss größer oder gleich MinimumVersion sein. Wenn eine neuere Version des Moduls verfügbar ist, wird die neuere Version installiert. Wenn Sie mehrere Module installieren möchten, können Sie MinimumVersion nicht verwenden. MinimumVersion und RequiredVersion können nicht im selben Install-Module Befehl verwendet werden.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

NameParameterSet
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-Name

Gibt die genauen Namen von Modulen an, die aus dem Onlinekatalog installiert werden sollen. Eine durch Trennzeichen getrennte Liste von Modulnamen wird akzeptiert. Der Modulname muss mit dem Modulnamen im Repository übereinstimmen. Dient Find-Module zum Abrufen einer Liste von Modulnamen.

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

NameParameterSet
Position:0
Obligatorisch:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-PassThru

Das Install-Module Cmdlet ruft ein oder mehrere Module ab, die bestimmte Kriterien aus einem Onlinerepository erfüllen. Das Cmdlet überprüft, ob Suchergebnisse gültige Module sind, und kopiert die Modulordner an den Installationsspeicherort. Installierte Module werden nach der Installation nicht automatisch importiert. Sie können filtern, welches Modul basierend auf den minimalen, maximalen und exakten Versionen der angegebenen Module installiert ist.

Wenn das installierte Modul denselben Namen oder dieselbe Version aufweist oder Befehle in einem vorhandenen Modul enthält, werden Warnmeldungen angezeigt. Nachdem Sie bestätigt haben, dass Sie das Modul installieren und die Warnungen außer Kraft setzen möchten, verwenden Sie die -Force Parameter.-AllowClobber Abhängig von Den Repositoryeinstellungen müssen Sie möglicherweise eine Aufforderung beantworten, um die Modulinstallation fortzusetzen.

In diesen Beispielen wird der PowerShell-Katalog als einziges registriertes Repository verwendet. Get-PSRepository zeigt die registrierten Repositorys an. Wenn Sie über mehrere registrierte Repositorys verfügen, verwenden Sie den -Repository Parameter, um den Namen des Repositorys anzugeben.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:False
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Proxy

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

Parametereigenschaften

Typ:Uri
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-ProxyCredential

Gibt ein Benutzerkonto an, das über die Berechtigung zum Verwenden des Proxyservers verfügt, der durch den Proxyparameter angegeben wird.

Parametereigenschaften

Typ:PSCredential
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-Repository

Verwenden Sie den Parameter Repository , um anzugeben, welches Repository zum Herunterladen und Installieren eines Moduls verwendet wird. Wird verwendet, wenn mehrere Repositorys registriert sind. Gibt den Namen eines registrierten Repositorys Install-Module im Befehl an. Verwenden Sie Register-PSRepositoryzum Registrieren eines Repositorys . Verwenden Sie Get-PSRepositoryzum Anzeigen registrierter Repositorys .

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

NameParameterSet
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-RequiredVersion

Gibt die genaue Version eines zu installierenden Moduls an. Wenn im Repository für die angegebene Version keine Übereinstimmung vorhanden ist, wird ein Fehler angezeigt. Wenn Sie mehrere Module installieren möchten, können Sie RequiredVersion nicht verwenden. RequiredVersion kann nicht im selben Install-Module Befehl wie MinimumVersion oder MaximumVersion verwendet werden.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

NameParameterSet
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:True
Wert aus verbleibenden Argumenten:False

-Scope

Gibt den Installationsumfang des Moduls an. Die zulässigen Werte für diesen Parameter sind AllUsers und CurrentUser.

Der AllUsers-Bereich installiert Module an einem Speicherort, auf den alle Benutzer des Computers zugreifen können:

$env:ProgramFiles\PowerShell\Modules

Der CurrentUser installiert Module an einem Speicherort, auf den nur der aktuelle Benutzer des Computers zugreifen kann. Beispiel:

$home\Documents\PowerShell\Modules

Wenn kein Bereich definiert ist, wird der Standardwert basierend auf der PowerShellGet-Version festgelegt.

  • In PowerShellGet-Versionen 2.0.0 und höher ist "CurrentUser" standardmäßig "CurrentUser", für das keine Erhöhung für die Installation erforderlich ist.
  • In PowerShellGet 1.x-Versionen ist die Standardeinstellung "AllUsers", für die eine Erhöhung für die Installation erforderlich ist.

Parametereigenschaften

Typ:String
Standardwert:None
Zulässige Werte:CurrentUser, AllUsers
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-SkipPublisherCheck

Ermöglicht ihnen die Installation einer neueren Version eines Moduls, das bereits auf Ihrem Computer vorhanden ist. Dies ist z. B. der Fall, wenn ein vorhandenes Modul von einem vertrauenswürdigen Herausgeber digital signiert ist, die neue Version jedoch nicht von einem vertrauenswürdigen Herausgeber digital signiert ist.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-WhatIf

Zeigt, was passiert, wenn ein Install-Module Befehl ausgeführt wurde. Das Cmdlet wird nicht ausgeführt.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:False
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:Wi

Parametersätze

(All)
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

PSRepositoryItemInfo

Find-Module erstellt PSRepositoryItemInfo - Objekte, die an die Pipeline Install-Modulegesendet werden können.

String

PSObject

String

PSCredential

Uri

Ausgaben

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

Bei Verwendung des PassThru-ParametersInstall-Module gibt ein PSRepositoryItemInfo - Objekt für das Modul aus. Dies sind die gleichen Informationen, die Sie vom Find-Module Cmdlet erhalten.

Hinweise

Install-Module wird auf PowerShell 5.0- oder höher-Versionen unter Windows 7 oder Windows 2008 R2 und höheren Versionen von Windows ausgeführt.

Von Bedeutung

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.

Als bewährte Methode für die Sicherheit sollten Sie den Code eines Moduls auswerten, bevor Sie cmdlets oder Funktionen zum ersten Mal ausführen. Um das Ausführen von Modulen zu verhindern, die schädlichen Code enthalten, werden installierte Module nach der Installation nicht automatisch importiert.

Wenn der mit dem Parameter Name angegebene Modulname nicht im Repository vorhanden ist, Install-Module wird ein Fehler zurückgegeben.

Verwenden Sie zum Installieren mehrerer Module den Parameter Name , und geben Sie ein durch Trennzeichen getrenntes Array von Modulnamen an. Wenn Sie mehrere Modulnamen angeben, können Sie MinimumVersion, MaximumVersion oder RequiredVersion nicht verwenden. Find-Module erstellt PSRepositoryItemInfo - Objekte, die an die Pipeline Install-Modulegesendet werden können. Die Pipeline ist eine weitere Möglichkeit, mehrere Module anzugeben, die in einem einzigen Befehl installiert werden sollen.

Standardmäßig werden Module für den Bereich von AllUsers in $env:ProgramFiles\PowerShell\Modulesinstalliert. Die Standardeinstellung verhindert Verwirrung, wenn Sie PowerShell Desired State Configuration (DSC)-Ressourcen installieren.

Eine Modulinstallation schlägt fehl und kann nicht importiert werden, wenn der Ordner kein , .psm1oder .psd1 denselben Namen enthält.dll. Verwenden Sie den Parameter Force , um das Modul zu installieren.

Wenn die Version eines vorhandenen Moduls mit dem durch den Parameter Name angegebenen Namen übereinstimmt und der Parameter MinimumVersion oder RequiredVersion nicht verwendet wird, Install-Module wird das Modul im Hintergrund fortgesetzt, aber nicht installiert.

Wenn die Version eines vorhandenen Moduls größer als der Wert des MinimumVersion-Parameters oder gleich dem Wert des RequiredVersion-Parameters ist, Install-Module wird das Modul im Hintergrund fortgesetzt, aber nicht installiert.

Wenn das vorhandene Modul nicht mit den Werten übereinstimmt, die durch die Parameter MinimumVersion oder RequiredVersion angegeben werden, tritt im Befehl ein Fehler auf Install-Module . Wenn beispielsweise die Version des vorhandenen installierten Moduls niedriger als der MinimumVersion-Wert oder nicht gleich dem RequiredVersion-Wert ist.

Bei einer Modulinstallation werden auch alle abhängigen Module installiert, die vom Modulherausgeber als erforderlich angegeben wurden. Der Herausgeber gibt die erforderlichen Module und ihre Versionen im Modulmanifest an.