Install-Module

Laddar ned en eller flera moduler från en lagringsplats och installerar dem på den lokala datorn.

Syntax

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

Cmdleten Install-Module hämtar en eller flera moduler som uppfyller angivna kriterier från en onlinelagringsplats. Cmdleten verifierar att sökresultaten är giltiga moduler och kopierar modulmapparna till installationsplatsen. Installerade moduler importeras inte automatiskt efter installationen. Du kan filtrera vilken modul som är installerad baserat på de lägsta, högsta och exakta versionerna av angivna moduler.

Om modulen som installeras har samma namn eller version, eller innehåller kommandon i en befintlig modul, visas varningsmeddelanden. När du har bekräftat att du vill installera modulen och åsidosätta varningarna använder du parametrarna -Force och -AllowClobber. Beroende på lagringsplatsens inställningar kan du behöva svara på en uppmaning om att modulinstallationen ska fortsätta.

I de här exemplen används PowerShell-galleriet som den enda registrerade lagringsplatsen. Get-PSRepository visar de registrerade lagringsplatserna. Om du har flera registrerade lagringsplatser använder du parametern -Repository för att ange lagringsplatsens namn.

Exempel

Exempel 1: Hitta och installera en modul

Det här exemplet hittar en modul på lagringsplatsen och installerar modulen.

Find-Module -Name PowerShellGet | Install-Module

Find-Module använder parametern Name för att ange modulen PowerShellGet. Som standard laddas den senaste versionen av modulen ned från lagringsplatsen. Objektet skickas ned i pipelinen till cmdleten Install-Module. Install-Module installerar modulen för alla användare i $env:ProgramFiles\PowerShell\Modules.

Exempel 2: Installera en modul efter namn

I det här exemplet installeras den senaste versionen av modulen PowerShellGet.

Install-Module -Name PowerShellGet

Install-Module använder parametern Name för att ange modulen PowerShellGet. Som standard laddas den senaste versionen av modulen ned från lagringsplatsen och installeras.

Exempel 3: Installera en modul med dess lägsta version

I det här exemplet installeras den lägsta versionen av modulen PowerShellGet. Parametern MinimumVersion anger den lägsta versionen av modulen som ska installeras. Om en nyare version av modulen är tillgänglig laddas den versionen ned och installeras för alla användare.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

Install-Module använder parametern Name för att ange modulen PowerShellGet. Parametern MinimumVersion anger att version 2.0.1 laddas ned från lagringsplatsen och installeras. Eftersom version 2.0.4 är tillgänglig laddas den versionen ned och installeras för alla användare.

Exempel 4: Installera en specifik version av en modul

I det här exemplet installeras en specifik version av modulen PowerShellGet.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

Install-Module använder parametern Name för att ange modulen PowerShellGet. Parametern RequiredVersion anger att version 2.0.0 laddas ned och installeras för alla användare.

Exempel 5: Installera endast en modul för den aktuella användaren

Det här exemplet laddar ned och installerar den senaste versionen av en modul, endast för den aktuella användaren.

Install-Module -Name PowerShellGet -Scope CurrentUser

Install-Module använder parametern Name för att ange modulen PowerShellGet. Install-Module laddar ned och installerar den senaste versionen av PowerShellGet- till den aktuella användarens katalog $home\Documents\PowerShell\Modules.

Parametrar

-AcceptLicense

För moduler som kräver en licens godkänner AcceptLicense automatiskt licensavtalet under installationen. Mer information finns i moduler som kräver licensgodkännande.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-AllowClobber

Åsidosätter varningsmeddelanden om installationskonflikter om befintliga kommandon på en dator. Skriver över befintliga kommandon som har samma namn som kommandon som installeras av en modul. AllowClobber och Force kan användas tillsammans i ett Install-Module kommando.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-AllowPrerelease

Gör att du kan installera en modul som har markerats som en förhandsversion.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten Install-Module.

Typ:SwitchParameter
Alias:cf
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Credential

Anger ett användarkonto som har behörighet att installera en modul för en angiven paketleverantör eller källa.

Typ:PSCredential
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Force

Installerar en modul och åsidosätter varningsmeddelanden om modulinstallationskonflikter. Om det redan finns en modul med samma namn på datorn Force tillåter att flera versioner installeras. Om det finns en befintlig modul med samma namn och version skriver Force över den versionen. Force och AllowClobber kan användas tillsammans i ett Install-Module kommando.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-InputObject

Används för pipelineindata. Ett fel utlöses om ett värde som anges direkt till InputObject. Använd pipelinen för att skicka objekt med parametern InputObject.

Typ:PSObject[]
Position:0
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-MaximumVersion

Anger den maximala versionen av en enskild modul som ska installeras. Den installerade versionen måste vara mindre än eller lika med MaximumVersion. Om du vill installera flera moduler kan du inte använda MaximumVersion. MaximumVersion och RequiredVersion kan inte användas i samma Install-Module kommando.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-MinimumVersion

Anger den lägsta versionen av en enskild modul som ska installeras. Den installerade versionen måste vara större än eller lika med MinimumVersion. Om det finns en nyare version av modulen tillgänglig installeras den nyare versionen. Om du vill installera flera moduler kan du inte använda MinimumVersion. MinimumVersion och RequiredVersion kan inte användas i samma Install-Module kommando.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Name

Anger de exakta namnen på moduler som ska installeras från onlinegalleriet. En kommaavgränsad lista över modulnamn accepteras. Modulnamnet måste matcha modulnamnet på lagringsplatsen. Använd Find-Module för att hämta en lista över modulnamn.

Typ:String[]
Position:0
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-PassThru

Typ:SwitchParameter
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Proxy

Anger en proxyserver för begäran i stället för att ansluta direkt till Internetresursen.

Typ:Uri
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-ProxyCredential

Anger ett användarkonto som har behörighet att använda proxyservern som anges av parametern Proxy.

Typ:PSCredential
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Repository

Använd parametern Repository för att ange vilken lagringsplats som ska användas för att ladda ned och installera en modul. Används när flera lagringsplatser registreras. Anger namnet på en registrerad lagringsplats i kommandot Install-Module. Om du vill registrera en lagringsplats använder du Register-PSRepository. Om du vill visa registrerade lagringsplatser använder du Get-PSRepository.

Typ:String[]
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-RequiredVersion

Anger den exakta versionen av en enskild modul som ska installeras. Om det inte finns någon matchning i lagringsplatsen för den angivna versionen visas ett fel. Om du vill installera flera moduler kan du inte använda RequiredVersion. RequiredVersion kan inte användas i samma Install-Module kommando som MinimumVersion eller MaximumVersion.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Scope

Anger modulens installationsomfång. De godtagbara värdena för den här parametern är AllUsers och CurrentUser.

Omfånget AllUsers installerar moduler på en plats som är tillgänglig för alla användare av datorn:

$env:ProgramFiles\PowerShell\Modules

CurrentUser installerar moduler på en plats som endast är tillgänglig för den aktuella användaren av datorn. Till exempel:

$home\Documents\PowerShell\Modules

När inget Omfång har definierats anges standardvärdet baserat på PowerShellGet-versionen.

  • I PowerShellGet-versionerna 2.0.0 och senare är standardvärdet CurrentUser, som inte kräver utökade installationer.
  • I PowerShellGet 1.x-versioner är standardvärdet AllUsers, som kräver utökade installationer.
Typ:String
Godkända värden:CurrentUser, AllUsers
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-SkipPublisherCheck

Gör att du kan installera en nyare version av en modul som redan finns på datorn. Till exempel när en befintlig modul signeras digitalt av en betrodd utgivare men den nya versionen inte är digitalt signerad av en betrodd utgivare.

Typ:SwitchParameter
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-WhatIf

Visar vad som skulle hända om ett Install-Module kommando kördes. Cmdleten körs inte.

Typ:SwitchParameter
Alias:wi
Position:Named
Standardvärde:False
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

Indata

PSRepositoryItemInfo

Find-Module skapar PSRepositoryItemInfo objekt som kan skickas ned i pipelinen till Install-Module.

String[]

PSObject[]

String

PSCredential

Uri

Utdata

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

När du använder parametern PassThru skickar Install-Module ut ett PSRepositoryItemInfo- objekt för modulen. Det här är samma information som du får från cmdleten Find-Module.

Kommentarer

Install-Module körs på PowerShell 5.0 eller senare versioner, på Windows 7 eller Windows 2008 R2 och senare versioner av Windows.

Viktig

Från och med april 2020 stöder PowerShell-galleriet inte längre TLS-versionerna (Transport Layer Security) 1.0 och 1.1. Om du inte använder TLS 1.2 eller senare får du ett felmeddelande när du försöker komma åt PowerShell-galleriet. Använd följande kommando för att se till att du använder TLS 1.2:

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

Mer information finns i meddelande i PowerShell-bloggen.

Vi rekommenderar att du utvärderar en moduls kod innan du kör några cmdletar eller funktioner för första gången. För att förhindra att moduler som innehåller skadlig kod körs importeras inte installerade moduler automatiskt efter installationen.

Om modulnamnet som anges av parametern Name inte finns på lagringsplatsen returnerar Install-Module ett fel.

Om du vill installera flera moduler använder du parametern Name och anger en kommaavgränsad matris med modulnamn. Om du anger flera modulnamn kan du inte använda MinimumVersion, MaximumVersioneller RequiredVersion. Find-Module skapar PSRepositoryItemInfo objekt som kan skickas ned i pipelinen till Install-Module. Pipelinen är ett annat sätt att ange flera moduler som ska installeras i ett enda kommando.

Som standard installeras moduler för omfånget för Allaanvändare i $env:ProgramFiles\PowerShell\Modules. Standardinställningen förhindrar förvirring när du installerar DSC-resurser (Desired State Configuration).

En modulinstallation misslyckas och kan inte importeras om den inte har en .psm1, .psd1eller .dll med samma namn i mappen. Använd parametern Force för att installera modulen.

Om en befintlig moduls version matchar det namn som anges av parametern Name och parametern MinimumVersion eller RequiredVersion inte används, fortsätter Install-Module tyst men installerar inte modulen.

Om en befintlig moduls version är större än värdet för parametern MinimumVersion, eller lika med värdet för parametern RequiredVersion, fortsätter Install-Module tyst men installerar inte modulen.

Om den befintliga modulen inte matchar de värden som anges av parametrarna MinimumVersion eller RequiredVersion uppstår ett fel i kommandot Install-Module. Om till exempel versionen av den befintliga installerade modulen är lägre än värdet MinimumVersion eller inte är lika med värdet RequiredVersion.

En modulinstallation installerar även beroende moduler som anges enligt vad som krävs av modulutgivaren. Utgivaren anger de moduler som krävs och deras versioner i modulmanifestet.