Install-Module
Downloadt een of meer modules uit een opslagplaats en installeert deze op de lokale computer.
Syntaxis
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>]
Install-Module
[-InputObject] <PSObject[]>
[-Credential <PSCredential>]
[-Scope <String>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllowClobber]
[-SkipPublisherCheck]
[-Force]
[-AcceptLicense]
[-PassThru]
[-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 na de installatie niet automatisch geïmporteerd.
U kunt filteren welke module is geïnstalleerd op basis van de minimale, maximale en exacte versies van opgegeven modules.
Dit is een proxy-cmdlet voor de Get-InstalledPSResource
cmdlet in de Microsoft.PowerShell.PSResourceGet. Zie Install-PSResourcevoor meer informatie.
Voorbeelden
Voorbeeld 1: Een module zoeken en installeren
In dit voorbeeld wordt een module gevonden in de opslagplaats en wordt de module geïnstalleerd.
Find-Module -Name PowerShellGet | Install-Module
De Find-Module
gebruikt de parameter Name om de module PowerShellGet op te geven. Standaard wordt de nieuwste versie van de module gedownload uit de opslagplaats. Het object wordt naar de pijplijn verzonden naar de cmdlet Install-Module
.
Install-Module
installeert de module voor alle gebruikers in $env:ProgramFiles\PowerShell\Modules
.
Voorbeeld 2: Een module installeren op naam
In dit voorbeeld is de nieuwste versie van de module PowerShellGet geïnstalleerd.
Install-Module -Name PowerShellGet
De Install-Module
gebruikt de parameter Name om de module PowerShellGet 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 wordt 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 voor alle gebruikers gedownload en geïnstalleerd.
Install-Module -Name PowerShellGet -MinimumVersion 2.0.1
De Install-Module
gebruikt de parameter Name om de module PowerShellGet op te geven. De parameter MinimumVersion geeft aan dat versie 2.0.1 wordt gedownload uit de opslagplaats en geïnstalleerd. Omdat versie 2.0.4 beschikbaar is, wordt die versie voor alle gebruikers gedownload en geïnstalleerd.
Voorbeeld 4: Een specifieke versie van een module installeren
In dit voorbeeld wordt 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 module PowerShellGet 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 module PowerShellGet op te geven.
Install-Module
downloadt en installeert de nieuwste versie van PowerShellGet- in de map van de huidige gebruiker, $HOME\Documents\PowerShell\Modules
.
Voorbeeld 6: De meest recente voorlopige versie van een module installeren
In dit voorbeeld ziet u hoe u de nieuwste versie van een module installeert wanneer die versie een voorlopige versie is. Voor het installeren van een prereleaseversie is de parameter AllowPrerelease vereist.
Install-Module -Name Microsoft.PowerShell.Crescendo -AllowPrerelease
Met deze methode krijgt u de nieuwste versie die beschikbaar is. Als de nieuwste versie geen voorlopige versie is, krijgt u de nieuwste stabiele versie van de module.
Voorbeeld 7: Een specifieke voorlopige versie van een module installeren
In dit voorbeeld ziet u hoe u een specifieke voorlopige versie van een module installeert. De cmdlet Find-Module
kan worden gebruikt om voorlopige versies van modules te vinden in de PowerShell Gallery.
Prerelease-versies hebben een indeling van <version_number>-<prerelease_label>
.
Find-Module PSReadLine -AllVersions -AllowPrerelease | Select-Object -First 5
Version Name Repository Description
------- ---- ---------- -----------
2.2.6 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.5 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.4-beta1 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.3 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.2 PSReadLine PSGallery Great command line editing in the PowerS…
Install-Module -Name PSReadLine -RequiredVersion 2.2.4-beta1 -AllowPrerelease
Gebruik de versie die wordt weergegeven in de PowerShell Gallery voor de waarde van de parameter RequiredVersion.
Parameters
-AcceptLicense
Voor modules waarvoor een licentie is vereist, accepteert AcceptLicense automatisch de gebruiksrechtovereenkomst tijdens de installatie. Zie Modules waarvoor licentieacceptatie is vereistvoor meer informatie.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-AllowClobber
Overschrijft waarschuwingsberichten over installatieconflicten over bestaande opdrachten op een computer.
Hiermee overschrijft u bestaande opdrachten met dezelfde naam als opdrachten die door een module worden geïnstalleerd.
AllowClobber- en Forceren kunnen samen worden gebruikt in een Install-Module
opdracht.
De proxy-cmdlet transformeert de waarde van deze parameter naar de parameter NoClobber van de Install-PSResource
cmdlet.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-AllowPrerelease
Hiermee kunt u een module installeren die is gemarkeerd als een voorlopige versie.
De proxy-cmdlet wijst deze parameter toe aan de Prerelease parameter van Install-PSResource
.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Confirm
U wordt gevraagd om bevestiging voordat u de cmdlet Install-Module
uitvoert.
Type: | SwitchParameter |
Aliassen: | cf |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Credential
Hiermee geeft u een gebruikersaccount met rechten voor het installeren van een module voor een opgegeven pakketprovider of bron.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Force
De proxy-cmdlet negeert deze parameter omdat deze niet wordt ondersteund door Install-PSResource
.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-InputObject
Wordt gebruikt voor pijplijninvoer. Er wordt een fout gegenereerd als een waarde die rechtstreeks aan InputObjectis opgegeven. Gebruik de pijplijn om objecten door te geven met de parameter InputObject.
Type: | PSObject[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-MaximumVersion
De proxy-cmdlet gebruikt de waarde van deze parameter om een zoektekenreeks voor NuGet-versies te maken voor gebruik met de parameter Version van Install-PSResource
.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-MinimumVersion
De proxy-cmdlet gebruikt de waarde van deze parameter om een zoektekenreeks voor NuGet-versies te maken voor gebruik met de parameter Version van Install-PSResource
.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Name
Hiermee geeft u de exacte namen van modules die moeten worden geïnstalleerd vanuit de onlinegalerie. Er wordt een door komma's gescheiden lijst met modulenamen 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 |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-PassThru
Wanneer u de parameter PassThru gebruikt, voert Install-Module
een PSRepositoryItemInfo--object voor de module uit. Dit is dezelfde informatie die u krijgt van de Find-Module
cmdlet.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Proxy
De proxy-cmdlet negeert deze parameter omdat deze niet wordt ondersteund door Install-PSResource
.
Type: | Uri |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-ProxyCredential
De proxy-cmdlet negeert deze parameter omdat deze niet wordt ondersteund door Install-PSResource
.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Repository
Gebruik de parameter Repository om de naam van de opslagplaats op te geven waaruit een module moet worden gedownload en geïnstalleerd. Wordt gebruikt wanneer meerdere opslagplaatsen zijn geregistreerd. Hiermee geeft u de naam van een geregistreerde opslagplaats in de opdracht Install-Module
. Als u een opslagplaats wilt registreren, gebruikt u Register-PSRepository
.
Gebruik Get-PSRepository
om geregistreerde opslagplaatsen weer te geven.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-RequiredVersion
De proxy-cmdlet gebruikt de waarde van deze parameter om een zoektekenreeks voor NuGet-versies te maken voor gebruik met de parameter Version van Install-PSResource
.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Scope
Hiermee geeft u het installatiebereik van de module. De acceptabele waarden voor deze parameter zijn AllUsers en CurrentUser.
De AllUsers bereik installeert modules op een locatie die toegankelijk is voor alle gebruikers van de computer:
$env:ProgramFiles\PowerShell\Modules
De CurrentUser installeert modules op een locatie die alleen toegankelijk is voor de huidige gebruiker van de computer. Bijvoorbeeld:
$HOME\Documents\PowerShell\Modules
Wanneer er geen Bereik is gedefinieerd, wordt de standaard ingesteld op basis van de PowerShellGet-versie.
- In PowerShellGet 1.x-versies is de standaardinstelling AllUsers, waarvoor uitbreiding van de installatie is vereist.
- Voor PowerShellGet-versies 2.0.0 en hoger in PowerShell 6 of hoger:
- De standaardwaarde is CurrentUser-, waarvoor geen uitbreiding van de installatie is vereist.
- Als u in een sessie met verhoogde bevoegdheid werkt, is de standaardinstelling AllUsers.
Type: | String |
Geaccepteerde waarden: | CurrentUser, AllUsers |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-SkipPublisherCheck
De proxy-cmdlet transformeert deze parameter naar AuthenticodeCheck- voordat u Install-PSResource
aanroept.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-WhatIf
Toont wat er zou gebeuren als een Install-Module
opdracht werd uitgevoerd. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliassen: | wi |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
PSRepositoryItemInfo
Find-Module
maakt PSRepositoryItemInfo objecten die in de pijplijn naar Install-Module
kunnen worden verzonden.
String[]
PSObject[]
Uitvoerwaarden
Microsoft.PowerShell.Commands.PSRepositoryItemInfo
Wanneer u de parameter PassThru gebruikt, voert Install-Module
een PSRepositoryItemInfo--object voor de module uit. Dit is dezelfde informatie die u krijgt van de Find-Module
cmdlet.
Notities
PowerShell bevat de volgende aliassen voor Install-Module
:
- Alle platforms:
inmo
Install-Module
wordt uitgevoerd op PowerShell 5.0 of hoger, in Windows 7 of Windows 2008 R2 en latere versies van Windows.
Belangrijk
Vanaf april 2020 biedt de PowerShell Gallery geen ondersteuning meer voor TLS-versies (Transport Layer Security) 1.0 en 1.1. Als u TLS 1.2 of hoger niet gebruikt, krijgt u een foutmelding wanneer u toegang probeert te krijgen tot de PowerShell Gallery. Gebruik de volgende opdracht om ervoor te zorgen dat u TLS 1.2 gebruikt:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Zie de aankondiging in de PowerShell-blog voor meer informatie.
Als best practice voor beveiliging evalueert u de code van een module voordat u cmdlets of functies voor de eerste keer uitvoert. Om te voorkomen dat modules worden uitgevoerd die schadelijke code bevatten, worden geïnstalleerde modules na de installatie niet automatisch geïmporteerd.
Als de modulenaam die is opgegeven door de parameter Name niet in de opslagplaats bestaat, retourneert Install-Module
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, MaximumVersionof RequiredVersionniet gebruiken.
Find-Module
maakt PSRepositoryItemInfo objecten die in de pijplijn naar Install-Module
kunnen worden verzonden. 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\PowerShell\Modules
. De standaardinstelling voorkomt verwarring wanneer u DSC-resources (PowerShell Desired State Configuration) installeert.
De installatie van een module mislukt en kan niet worden geïmporteerd als deze geen .psm1
, .psd1
of .dll
van dezelfde naam in de map heeft. 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 worden gebruikt, wordt Install-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, gaat Install-Module
op de achtergrond door, maar installeert de module niet.
Als de bestaande module niet overeenkomt met de waarden die zijn opgegeven door de MinimumVersion of RequiredVersion parameters, treedt er een fout op in de opdracht Install-Module
. Als de versie van de bestaande geïnstalleerde module bijvoorbeeld lager is dan de MinimumVersion waarde of niet gelijk is aan de RequiredVersion waarde.
Install-Module
installeert ook afhankelijke modules die zijn opgegeven zoals vereist door de uitgever van de module.
De uitgever vermeldt de vereiste modules en de bijbehorende versies in het modulemanifest.
Verwante koppelingen
PSResourceGet