Delen via


Install-Module

Downloadt een of meer modules uit een opslagplaats en installeert deze op de lokale computer.

Syntax

Install-Module
       [-Name] <string[]>
       [-MinimumVersion <version>]
       [-MaximumVersion <version>]
       [-RequiredVersion <version>]
       [-Repository <string[]>]
       [-Scope <string>]
       [-Force]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Install-Module
       [-InputObject] <psobject[]>
       [-Scope <string>]
       [-Force]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

De Install-Module cmdlet haalt een of meer modules op die voldoen aan opgegeven criteria uit een onlineopslagplaats. De cmdlet controleert of zoekresultaten geldige modules zijn en kopieert de modulemappen naar de installatielocatie. Geïnstalleerde modules worden niet automatisch geïmporteerd na de installatie. U kunt filteren welke module is geïnstalleerd op basis van de minimale, maximale en exacte versies van de opgegeven modules.

Als de module die wordt geïnstalleerd dezelfde naam of versie heeft, of opdrachten bevat in een bestaande module, worden waarschuwingsberichten weergegeven. Nadat u hebt bevestigd dat u de module wilt installeren en de waarschuwingen wilt overschrijven, gebruikt u de -Force parameter . Afhankelijk van de instellingen van uw opslagplaats moet u mogelijk een prompt beantwoorden om door te gaan met de installatie van de module.

In deze voorbeelden wordt de PowerShell Gallery gebruikt als de enige geregistreerde opslagplaats. Get-PSRepository geeft de geregistreerde opslagplaatsen weer. Als u meerdere geregistreerde opslagplaatsen hebt, gebruikt u de parameter om de -Repository naam van de opslagplaats op te geven.

Voorbeelden

Voorbeeld 1: Een module zoeken en installeren

In dit voorbeeld wordt een module in de opslagplaats gevonden en wordt de module geïnstalleerd.

Find-Module -Name PowerShellGet | Install-Module

De Find-Module gebruikt de parameter Name om de PowerShellGet-module op te geven. Standaard wordt de nieuwste versie van de module gedownload uit de opslagplaats. Het object wordt door de pijplijn naar de Install-Module cmdlet verzonden. Install-Module installeert de module voor alle gebruikers in $env:ProgramFiles\WindowsPowerShell\Modules.

Voorbeeld 2: Een module installeren op naam

In dit voorbeeld is de nieuwste versie van de PowerShellGet-module geïnstalleerd.

Install-Module -Name PowerShellGet

De Install-Module gebruikt de parameter Name om de PowerShellGet-module op te geven. Standaard wordt de nieuwste versie van de module gedownload uit de opslagplaats en geïnstalleerd.

Voorbeeld 3: Een module installeren met de minimale versie

In dit voorbeeld is de minimale versie van de PowerShellGet-module geïnstalleerd. De parameter MinimumVersion geeft de laagste versie van de module op die moet worden geïnstalleerd. Als er een nieuwere versie van de module beschikbaar is, wordt die versie gedownload en geïnstalleerd voor alle gebruikers.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

De Install-Module gebruikt de parameter Name om de PowerShellGet-module op te geven. De parameter MinimumVersion geeft aan dat versie 2.0.1 uit de opslagplaats wordt gedownload en geïnstalleerd. Omdat versie 2.0.4 beschikbaar is, wordt die versie gedownload en geïnstalleerd voor alle gebruikers.

Voorbeeld 4: Een specifieke versie van een module installeren

In dit voorbeeld is een specifieke versie van de PowerShellGet-module geïnstalleerd.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

De Install-Module gebruikt de parameter Name om de PowerShellGet-module op te geven. De parameter RequiredVersion geeft aan dat versie 2.0.0 wordt gedownload en geïnstalleerd voor alle gebruikers.

Voorbeeld 5: een module alleen installeren voor de huidige gebruiker

In dit voorbeeld wordt de nieuwste versie van een module gedownload en geïnstalleerd, alleen voor de huidige gebruiker.

Install-Module -Name PowerShellGet -Scope CurrentUser

De Install-Module gebruikt de parameter Name om de PowerShellGet-module op te geven. Install-Module downloadt en installeert de nieuwste versie van PowerShellGet in de map van de huidige gebruiker, $home\Documents\WindowsPowerShell\Modules.

Parameters

-Confirm

U wordt om bevestiging gevraagd voordat u de Install-Module cmdlet uitvoert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Installeert een module en overschrijft waarschuwingsberichten over module-installatieconflicten. Als er al een module met dezelfde naam op de computer bestaat, kunnen met Force meerdere versies worden geïnstalleerd. Als er een bestaande module met dezelfde naam en versie is, overschrijft Force die versie.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Wordt gebruikt voor pijplijninvoer.

Type:PSObject[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-MaximumVersion

Hiermee geeft u de maximale versie van één module te installeren. Als u meerdere modules wilt installeren, kunt u MaximumVersion niet gebruiken. MaximumVersion en RequiredVersion kunnen niet worden gebruikt in dezelfde Install-Module opdracht.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MinimumVersion

Hiermee geeft u de minimale versie van één module te installeren. Als er een nieuwere versie van de module beschikbaar is, wordt de nieuwere versie geïnstalleerd. Als u meerdere modules wilt installeren, kunt u MinimumVersion niet gebruiken. MinimumVersion en RequiredVersion kunnen niet worden gebruikt in dezelfde Install-Module opdracht.

Type:String
Aliases:Version
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Hiermee geeft u de exacte namen op van modules die moeten worden geïnstalleerd vanuit de onlinegalerie. Een door komma's gescheiden lijst met modulenamen wordt geaccepteerd. De modulenaam moet overeenkomen met de modulenaam in de opslagplaats. Gebruik Find-Module om een lijst met modulenamen op te halen.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Repository

Gebruik de parameter Opslagplaats om op te geven welke opslagplaats wordt gebruikt voor het downloaden en installeren van een module. Wordt gebruikt wanneer meerdere opslagplaatsen worden geregistreerd. Hiermee geeft u de naam van een geregistreerde opslagplaats in de Install-Module opdracht. Als u een opslagplaats wilt registreren, gebruikt u Register-PSRepository. Als u geregistreerde opslagplaatsen wilt weergeven, gebruikt u Get-PSRepository.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredVersion

Hiermee geeft u de exacte versie van één module te installeren. Als er geen overeenkomst is in de opslagplaats voor de opgegeven versie, wordt er een fout weergegeven. Als u meerdere modules wilt installeren, kunt u RequiredVersion niet gebruiken. RequiredVersion kan niet worden gebruikt in dezelfde Install-Module opdracht als MinimumVersion of MaximumVersion.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Scope

Hiermee geeft u het installatiebereik van de module op. De acceptabele waarden voor deze parameter zijn AllUsers en CurrentUser.

Met het bereik AllUsers worden modules geïnstalleerd op een locatie die toegankelijk is voor alle gebruikers van de computer:

$env:ProgramFiles\WindowsPowerShell\Modules

De CurrentUser installeert modules op een locatie die alleen toegankelijk is voor de huidige gebruiker van de computer:

$home\Documents\WindowsPowerShell\Modules

Wanneer er geen bereik is gedefinieerd, wordt de standaardinstelling ingesteld op basis van de huidige sessie:

  • Voor een PowerShell-sessie met verhoogde bevoegdheden wordt Bereik standaard ingesteld op AllUsers.
  • Voor PowerShell-sessies zonder verhoogde bevoegdheden in PowerShellGet versie 2.0.0 en hoger is het bereikCurrentUser.
  • Voor niet-verhoogde PowerShell-sessies in PowerShellGet versie 1.6.7 en eerder is bereik niet gedefinieerd en Install-Module mislukt het.
Type:String
Accepted values:AllUsers, CurrentUser
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Laat zien wat er zou gebeuren als een Install-Module opdracht werd uitgevoerd. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

PSRepositoryItemInfo

Find-Module maakt PSRepositoryItemInfo-objecten die in de pijplijn kunnen worden verzonden naar Install-Module.

Notities

Install-Module wordt uitgevoerd op PowerShell 5.0 of latere versies, op Windows 7 of Windows 2008 R2 en latere versies van Windows.

Als best practice voor beveiliging moet u de code van een module evalueren voordat u cmdlets of functies voor het eerst uitvoert. Om te voorkomen dat modules worden uitgevoerd die schadelijke code bevatten, worden geïnstalleerde modules niet automatisch geïmporteerd na de installatie.

Als de modulenaam die is opgegeven door de parameter Name niet bestaat in de opslagplaats, Install-Module retourneert een fout.

Als u meerdere modules wilt installeren, gebruikt u de parameter Name en geeft u een door komma's gescheiden matrix met modulenamen op. Als u meerdere modulenamen opgeeft, kunt u MinimumVersion, MaximumVersion of RequiredVersion niet gebruiken. Find-Module maakt PSRepositoryItemInfo-objecten die in de pijplijn kunnen worden verzonden naar Install-Module. De pijplijn is een andere manier om meerdere modules op te geven die in één opdracht moeten worden geïnstalleerd.

Modules voor het bereik van AllUsers worden standaard geïnstalleerd in $env:ProgramFiles\WindowsPowerShell\Modules. De standaardinstelling voorkomt verwarring wanneer u PowerShell Desired State Configuration (DSC)-resources installeert.

De installatie van een .psm1.psd1module mislukt en kan niet worden geïmporteerd als deze niet dezelfde naam heeft als , of .dll in de map. Gebruik de parameter Force om de module te installeren.

Als de versie van een bestaande module overeenkomt met de naam die is opgegeven door de parameter Name en de parameter MinimumVersion of RequiredVersion niet wordt gebruikt, Install-Module wordt de module op de achtergrond voortgezet, maar wordt de module niet geïnstalleerd.

Als de versie van een bestaande module groter is dan de waarde van de parameter MinimumVersion of gelijk is aan de waarde van de parameter RequiredVersion , Install-Module wordt de module op de achtergrond voortgezet, maar wordt de module niet geïnstalleerd.

Als de bestaande module niet overeenkomt met de waarden die zijn opgegeven door de parameters MinimumVersion of RequiredVersion , treedt er een fout op in de Install-Module opdracht. Bijvoorbeeld als de versie van de bestaande geïnstalleerde module lager is dan de waarde Van MinimumVersion of niet gelijk is aan de waarde van RequiredVersion .