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\Modules
aktuá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[]
Výstupy
Microsoft.PowerShell.Commands.PSRepositoryItemInfo
Při použití passThru parametru výstup Install-Module
PSRepositoryItemInfo 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
, .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 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.