Sdílet prostřednictvím


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 modulu 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 upozornění. Po potvrzení, že chcete nainstalovat modul a přepsat upozornění, použijte -Force parametry a -AllowClobber . V závislosti na nastavení úložiště možná budete muset odpovědět na výzvu, aby instalace modulu pokračovala.

Parametry, které přebírají čísla verzí modulu, 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-Module Name použije parametr Name k určení modulu PowerShellGet . Ve výchozím nastavení se nejnovější verze modulu stáhne z úložiště. Objekt se odešle do kanálu rutiny Install-Module . Install-Module nainstaluje modul pro všechny uživatele v $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-Module Name použije parametr Name k určení modulu PowerShellGet . 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 jeho 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-Module Name použije parametr Name k určení modulu PowerShellGet . Parametr MinimumVersion určuje, že se verze 2.0.1 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-Module Name použije parametr Name k určení modulu PowerShellGet . Parametr RequiredVersion určuje, že se verze 2.0.0 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-Module Name použije parametr Name k určení modulu PowerShellGet . Install-Module stáhne a nainstaluje nejnovější verzi modulu PowerShellGet 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ěžnou verzí, 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. Pomocí rutiny Find-Module můžete vyhledat předběžné verze 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

Jako hodnotu parametru RequiredVersion použijte verzi uvedenou 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
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowClobber

Přepíše upozornění týkající se konfliktů 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. AllowClobber a Force se dají v Install-Module příkazu použít společně.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
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
Required:False
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
Required: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
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Force

Nainstaluje modul a přepíše varovné zprávy o konfliktech instalace modulů. Pokud modul se stejným názvem již v počítači existuje, force umožňuje instalaci více verzí. Pokud existuje modul se stejným názvem a verzí, force tuto verzi přepíše. Force a AllowClobber se dají v Install-Module příkazu použít společně.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
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
Required:True
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 hodnotě 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
Required:False
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 hodnotě 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
Required:False
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. Pomocí Find-Module příkazu získáte seznam názvů modulů.

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

-PassThru

Type:SwitchParameter
Position:Named
Default value:False
Required: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
Required:False
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
Required:False
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 . K registraci ú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
Required:False
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
Required:False
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é pouze aktuálnímu uživateli počítače. Příklad:

$HOME\Documents\PowerShell\Modules

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

  • Ve verzích PowerShellGet 1.x je výchozí hodnota AllUsers, která vyžaduje zvýšení oprávnění pro instalaci.
  • Pro PowerShellGet verze 2.0.0 a novější v PowerShellu 6 nebo novějším:
    • Výchozí hodnota je CurrentUser, která pro instalaci nevyžaduje zvýšení oprávnění.
    • Pokud používáte relaci se zvýšenými oprávněními, výchozí hodnota je AllUsers.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:None
Required:False
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ě podepsaný 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
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

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

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

Vstupy

PSRepositoryItemInfo

Find-Module vytvoří objekty PSRepositoryItemInfo , které je možné odeslat kanálem do Install-Module.

String[]

PSObject[]

String

PSCredential

Uri

Výstupy

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

Při použití passThru parametru 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ěží na PowerShellu 5.0 nebo novějších verzích windows 7 nebo Windows 2008 R2 a novějších verzích Windows.

Důležité

Od dubna 2020 Galerie prostředí PowerShell už nepodporuje protokol TLS (Transport Layer Security) verze 1.0 a 1.1. Pokud nepoužíváte protokol TLS 1.2 nebo novější, zobrazí se při pokusu o přístup k Galerie prostředí PowerShell 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 tomto 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, nainstalované moduly se po instalaci automaticky neimportují.

Pokud název modulu určený 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é je možné odeslat kanálem do 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í do $env:ProgramFiles\PowerShell\Modules. Výchozí nastavení zabrání nejasnostem při instalaci prostředků powershellového Desired State Configuration (DSC).

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

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

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

Pokud stávající modul neodpovídá hodnotám určeným parametry MinimumVersion nebo RequiredVersion , dojde v příkazu 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. Vydavatel v manifestu modulu vypíše požadované moduly a jejich verze.