Install-Module

Stáhne jeden nebo více modulů z úložiště a nainstaluje je do místního počítače.

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

Rutina Install-Module získá jeden nebo více modulů, které splňují zadaná kritéria, z online úložiště. Rutina ověří, že výsledky hledání jsou platnými moduly, a zkopíruje složky modulů do umístění instalace. Nainstalované moduly se po instalaci neimportují automaticky. Nainstalovaný modul můžete filtrovat na základě minimální, maximální a přesné verze zadaných modulů.

Pokud má instalovaný modul stejný název nebo verzi nebo obsahuje příkazy v existujícím modulu, zobrazí se varovné zprávy. Po potvrzení, že chcete modul nainstalovat a přepsat upozornění, použijte -Force parametry a -AllowClobber . V závislosti na nastavení úložiště může být potřeba odpovědět na výzvu k pokračování instalace modulu.

Parametry, které přebírají čísla verzí modulů, očekávají řetězce formátované jako čísla verzí.

  • Standardní čísla verzí mají formát x.y.z , kde x, y a z jsou čísla.
  • Předběžné verze mají formát x.y.z-<prerelease_label> , ve kterém <prerelease_label> je k dané verzi přiřazen libovolný řetězec.

V těchto příkladech se jako jediné zaregistrované úložiště používá Galerie prostředí PowerShell. Get-PSRepository zobrazí registrovaná úložiště. Pokud máte více registrovaných úložišť, zadejte název úložiště pomocí -Repository parametru .

Příklady

Příklad 1: Vyhledání a instalace modulu

Tento příklad najde modul v úložišti a nainstaluje ho.

Find-Module -Name PowerShellGet | Install-Module

Parametr Find-ModuleName použije k zadání modulu PowerShellGet parametr. Ve výchozím nastavení se nejnovější verze modulu stáhne z úložiště. Objekt se odešle do kanálu do rutiny Install-Module . Install-Module nainstaluje modul pro všechny uživatele v nástroji $env:ProgramFiles\PowerShell\Modules.

Příklad 2: Instalace modulu podle názvu

V tomto příkladu je nainstalovaná nejnovější verze modulu PowerShellGet .

Install-Module -Name PowerShellGet

Parametr Install-ModuleName použije k zadání modulu PowerShellGet parametr. Ve výchozím nastavení se nejnovější verze modulu stáhne z úložiště a nainstaluje.

Příklad 3: Instalace modulu s použitím minimální verze

V tomto příkladu je nainstalovaná minimální verze modulu PowerShellGet . Parametr MinimumVersion určuje nejnižší verzi modulu, která se má nainstalovat. Pokud je k dispozici novější verze modulu, stáhne se a nainstaluje pro všechny uživatele.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

Parametr Install-ModuleName použije k zadání modulu PowerShellGet parametr. Parametr MinimumVersion určuje, že verze 2.0.1 se stáhne z úložiště a nainstaluje. Vzhledem k tomu, že je k dispozici verze 2.0.4 , je tato verze stažena a nainstalována pro všechny uživatele.

Příklad 4: Instalace konkrétní verze modulu

V tomto příkladu je nainstalovaná konkrétní verze modulu PowerShellGet .

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

Parametr Install-ModuleName použije k zadání modulu PowerShellGet parametr. Parametr RequiredVersion určuje, že verze 2.0.0 se stáhne a nainstaluje pro všechny uživatele.

Příklad 5: Instalace modulu pouze pro aktuálního uživatele

Tento příklad stáhne a nainstaluje nejnovější verzi modulu jenom pro aktuálního uživatele.

Install-Module -Name PowerShellGet -Scope CurrentUser

Parametr Install-ModuleName použije k zadání modulu PowerShellGet parametr. Install-Module stáhne a nainstaluje nejnovější verzi PowerShellGetu do adresáře $HOME\Documents\PowerShell\Modulesaktuálního uživatele.

Příklad 6: Instalace nejnovější předběžné verze modulu

Tento příklad ukazuje, jak nainstalovat nejnovější verzi modulu, pokud je tato verze předběžnou verzí. Instalace předběžné verze vyžaduje parametr AllowPrerelease .

Install-Module -Name Microsoft.PowerShell.Crescendo -AllowPrerelease

Pomocí této metody získáte nejnovější dostupnou verzi. Pokud nejnovější verze není předběžná verze, získáte nejnovější stabilní verzi modulu.

Příklad 7: Instalace konkrétní předběžné verze modulu

Tento příklad ukazuje, jak nainstalovat konkrétní předběžnou verzi modulu. Rutinu Find-Module můžete použít k vyhledání předběžných verzí modulů v Galerie prostředí PowerShell.

Předběžné verze mají formát <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

Pro hodnotu parametru RequiredVersion použijte verzi zobrazenou v Galerie prostředí PowerShell.

Parametry

-AcceptLicense

Pro moduly, které vyžadují licenci, acceptLicense automaticky přijme licenční smlouvu během instalace. Další informace najdete v tématu Moduly vyžadující přijetí licence.

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

-AllowClobber

Přepíše varovné zprávy o konfliktech instalace existujících příkazů v počítači. Přepíše existující příkazy, které mají stejný název jako příkazy instalované modulem. Funkce AllowClobber a Force se dají v příkazu použít společně Install-Module .

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

-AllowPrerelease

Umožňuje nainstalovat modul označený jako předběžná verze.

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

-Confirm

Před spuštěním Install-Module rutiny vás vyzve k potvrzení.

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

-Credential

Určuje uživatelský účet, který má práva k instalaci modulu pro zadaného poskytovatele balíčků nebo zdroje.

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

-Force

Nainstaluje modul a přepíše upozornění na konflikty instalace modulu. Pokud už v počítači existuje modul se stejným názvem, umožňuje vynutit instalaci více verzí. Pokud existuje modul se stejným názvem a verzí, vynutit přepíše danou verzi. Force a AllowClobber je možné v příkazu použít společně Install-Module .

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

-InputObject

Používá se pro vstup kanálu. Pokud je hodnota zadaná přímo do objektu InputObject, vyvolá se chyba. Pomocí kanálu předejte objekty s parametrem InputObject .

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

-MaximumVersion

Určuje maximální verzi jednoho modulu, který se má nainstalovat. Nainstalovaná verze musí být menší než nebo rovna maximumVersion. Pokud chcete nainstalovat více modulů, nemůžete použít MaximumVersion. MaximumVersion a RequiredVersion nelze použít ve stejném Install-Module příkazu.

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

-MinimumVersion

Určuje minimální verzi jednoho modulu, který se má nainstalovat. Nainstalovaná verze musí být větší než nebo rovna MinimumVersion. Pokud je k dispozici novější verze modulu, nainstaluje se novější verze. Pokud chcete nainstalovat více modulů, nemůžete použít MinimumVersion. MinimumVersion a RequiredVersion nelze použít ve stejném Install-Module příkazu.

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

-Name

Určuje přesné názvy modulů, které se mají nainstalovat z online galerie. Přijímá se seznam názvů modulů oddělených čárkami. Název modulu se musí shodovat s názvem modulu v úložišti. Slouží Find-Module k získání seznamu názvů modulů.

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

-PassThru

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

-Proxy

Určuje proxy server pro požadavek místo přímého připojení k internetovému prostředku.

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

-ProxyCredential

Určuje uživatelský účet, který má oprávnění používat proxy server určený parametrem Proxy .

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

-Repository

Pomocí parametru Repository zadejte název úložiště, ze kterého chcete stáhnout a nainstalovat modul. Používá se při registraci více úložišť. Určuje název registrovaného úložiště v Install-Module příkazu . Pokud chcete zaregistrovat úložiště, použijte Register-PSRepository. Pokud chcete zobrazit registrovaná úložiště, použijte Get-PSRepository.

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

-RequiredVersion

Určuje přesnou verzi jednoho modulu, který se má nainstalovat. Pokud v úložišti není žádná shoda pro zadanou verzi, zobrazí se chyba. Pokud chcete nainstalovat více modulů, nemůžete použít RequiredVersion. RequiredVersion se nedá použít ve stejném Install-Module příkazu jako MinimumVersion nebo MaximumVersion.

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

-Scope

Určuje rozsah instalace modulu. Přijatelné hodnoty pro tento parametr jsou AllUsers a CurrentUser.

Obor AllUsers nainstaluje moduly do umístění, které je přístupné všem uživatelům počítače:

$env:ProgramFiles\PowerShell\Modules

CurrentUser nainstaluje moduly do umístění, které je přístupné jenom aktuálnímu uživateli počítače. Například:

$HOME\Documents\PowerShell\Modules

Pokud není definován žádný obor , nastaví se výchozí hodnota na základě verze PowerShellGet.

  • Ve verzi PowerShellGet 2.0.0 a novějších je výchozí hodnota CurrentUser, která nevyžaduje zvýšení oprávnění k instalaci.
  • Ve verzích PowerShellGet 1.x je výchozí hodnota AllUsers, která vyžaduje zvýšení oprávnění k instalaci.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-SkipPublisherCheck

Umožňuje nainstalovat novější verzi modulu, která už v počítači existuje. Například když je existující modul digitálně podepsán důvěryhodným vydavatelem, ale nová verze není digitálně podepsána důvěryhodným vydavatelem.

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

-WhatIf

Ukazuje, co by se stalo při Install-Module spuštění příkazu. Rutina se nespustí.

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

Vstupy

PSRepositoryItemInfo

Find-Module vytvoří objekty PSRepositoryItemInfo , které lze odeslat do kanálu Install-Module.

String[]

PSObject[]

String

PSCredential

Uri

Výstupy

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

Při použití parametru PassThru výstup Install-ModulePSRepositoryItemInfo objekt pro modul. Jedná se o stejné informace, které získáte z rutiny Find-Module .

Poznámky

PowerShell obsahuje následující aliasy pro Install-Module:

  • Všechny platformy:
    • inmo

Install-Module běží v PowerShellu 5.0 nebo novějších verzích, ve Windows 7 nebo Windows 2008 R2 a novějších verzích Windows.

Důležité

Od dubna 2020 už Galerie prostředí PowerShell nepodporuje protokol TLS (Transport Layer Security) verze 1.0 a 1.1. Pokud nepoužíváte protokol TLS 1.2 nebo vyšší, při pokusu o přístup k Galerie prostředí PowerShell se zobrazí chyba. Pomocí následujícího příkazu se ujistěte, že používáte protokol TLS 1.2:

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

Další informace najdete v oznámení na blogu o PowerShellu.

Osvědčeným postupem zabezpečení je vyhodnotit kód modulu před prvním spuštěním rutin nebo funkcí. Aby se zabránilo spuštění modulů, které obsahují škodlivý kód, nejsou nainstalované moduly po instalaci automaticky importovány.

Pokud název modulu zadaný parametrem Name v úložišti neexistuje, Install-Module vrátí chybu.

Pokud chcete nainstalovat více modulů, použijte parametr Name a zadejte pole názvů modulů oddělené čárkami. Pokud zadáte více názvů modulů, nemůžete použít MinimumVersion, MaximumVersion ani RequiredVersion. Find-Module vytvoří objekty PSRepositoryItemInfo , které lze odeslat do kanálu Install-Module. Kanál je dalším způsobem, jak zadat více modulů, které se mají nainstalovat v jednom příkazu.

Ve výchozím nastavení se moduly pro obor AllUsers instalují v nástroji$env:ProgramFiles\PowerShell\Modules. Výchozí nastavení zabraňuje nejasnostem při instalaci prostředků powershellového Desired State Configuration (DSC).

Instalace modulu selže a není možné ho importovat, pokud ve složce nemá .psm1.psd1, nebo .dll se stejným názvem. K instalaci modulu použijte parametr Force .

Pokud verze existujícího modulu odpovídá názvu zadanému parametrem Name a nepoužívá se parametr MinimumVersion nebo RequiredVersion , bezobslužně pokračuje, Install-Module ale modul se neinstaluje.

Pokud je verze existujícího modulu větší než hodnota parametru MinimumVersion nebo se rovná hodnotě parametru RequiredVersion , bezobslužně pokračuje, Install-Module ale nenainstaluje modul.

Pokud existující modul neodpovídá hodnotám zadaným parametry MinimumVersion nebo RequiredVersion , v příkazu dojde k Install-Module chybě. Pokud je například verze existujícího nainstalovaného modulu nižší než hodnota MinimumVersion nebo se nerovná hodnotě RequiredVersion .

Install-Module také nainstaluje všechny závislé moduly zadané podle požadavků vydavatele modulu. V manifestu modulu se zobrazí seznam požadovaných modulů a jejich verzí.