Install-Module
Scarica uno o più moduli da un repository e li installa nel computer locale.
Sintassi
NameParameterSet (impostazione predefinita).
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>]
InputObject
Install-Module
[-InputObject] <PSObject[]>
[-Credential <PSCredential>]
[-Scope <String>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-AllowClobber]
[-SkipPublisherCheck]
[-Force]
[-AcceptLicense]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il Install-Module cmdlet ottiene uno o più moduli che soddisfano i criteri specificati da un repository online. Il cmdlet verifica che i risultati della ricerca siano moduli validi e copia le cartelle del modulo nel percorso di installazione. I moduli installati non vengono importati automaticamente dopo l'installazione.
È possibile filtrare il modulo installato in base alle versioni minime, massime ed esatte dei moduli specificati.
Si tratta di un cmdlet proxy per il Get-InstalledPSResource cmdlet in Microsoft.PowerShell.PSResourceGet. Per altre informazioni, vedere Install-PSResource.
Esempio
Esempio 1: Trovare e installare un modulo
Questo esempio trova un modulo nel repository e installa il modulo.
Find-Module -Name PowerShellGet | Install-Module
Find-Module Usa il parametro Name per specificare il modulo PowerShellGet. Per impostazione predefinita, la versione più recente del modulo viene scaricata dal repository. L'oggetto viene inviato alla pipeline al cmdlet Install-Module.
Install-Module installa il modulo per tutti gli utenti in $env:ProgramFiles\PowerShell\Modules.
Esempio 2: Installare un modulo in base al nome
In questo esempio viene installata la versione più recente del modulo PowerShellGet .
Install-Module -Name PowerShellGet
Install-Module Usa il parametro Name per specificare il modulo PowerShellGet. Per impostazione predefinita, la versione più recente del modulo viene scaricata dal repository e installata.
Esempio 3: Installare un modulo usando la versione minima
In questo esempio viene installata la versione minima del modulo PowerShellGet . Il parametro MinimumVersion specifica la versione più bassa del modulo da installare. Se è disponibile una versione più recente del modulo, tale versione viene scaricata e installata per tutti gli utenti.
Install-Module -Name PowerShellGet -MinimumVersion 2.0.1
Install-Module Usa il parametro Name per specificare il modulo PowerShellGet. Il parametro MinimumVersion specifica che la versione 2.0.1 viene scaricata dal repository e installata. Poiché è disponibile la versione 2.0.4 , tale versione viene scaricata e installata per tutti gli utenti.
Esempio 4: Installare una versione specifica di un modulo
In questo esempio viene installata una versione specifica del modulo PowerShellGet .
Install-Module -Name PowerShellGet -RequiredVersion 2.0.0
Install-Module Usa il parametro Name per specificare il modulo PowerShellGet. Il parametro RequiredVersion specifica che la versione 2.0.0 viene scaricata e installata per tutti gli utenti.
Esempio 5: Installare un modulo solo per l'utente corrente
Questo esempio scarica e installa la versione più recente di un modulo, solo per l'utente corrente.
Install-Module -Name PowerShellGet -Scope CurrentUser
Install-Module Usa il parametro Name per specificare il modulo PowerShellGet.
Install-Module scarica e installa la versione più recente di PowerShellGet nella directory dell'utente corrente, $HOME\Documents\PowerShell\Modules.
Esempio 6: Installare la versione non definitiva più recente di un modulo
Questo esempio illustra come installare la versione più recente di un modulo quando tale versione è una versione non definitiva. Per installare una versione non definitiva è necessario il parametro AllowPrerelease .
Install-Module -Name Microsoft.PowerShell.Crescendo -AllowPrerelease
Usando questo metodo si ottiene la versione più recente disponibile. Se la versione più recente non è una versione preliminare, si ottiene la versione stabile più recente del modulo.
Esempio 7: Installare una versione non definitiva specifica di un modulo
Questo esempio illustra come installare una versione non definitiva specifica di un modulo. Il Find-Module cmdlet può essere usato per trovare versioni non definitive dei moduli in PowerShell Gallery.
Le versioni non definitive hanno un formato .<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
Usare la versione visualizzata in PowerShell Gallery per il valore del parametro RequiredVersion .
Parametri
-AcceptLicense
Per i moduli che richiedono una licenza, AcceptLicense accetta automaticamente il contratto di licenza durante l'installazione. Per altre informazioni, vedere Moduli che richiedono l'accettazione della licenza.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-AllowClobber
Esegue l'override dei messaggi di avviso relativi ai conflitti di installazione relativi ai comandi esistenti in un computer.
Sovrascrive i comandi esistenti con lo stesso nome dei comandi installati da un modulo.
AllowClobber e Force possono essere usati insieme in un Install-Module comando.
Il cmdlet proxy trasforma il valore di questo parametro nel parametro NoClobber del Install-PSResource cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-AllowPrerelease
Consente di installare un modulo contrassegnato come versione non definitive.
Il cmdlet proxy esegue il mapping di questo parametro al parametro Prerelease di Install-PSResource.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
NameParameterSet
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet Install-Module.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | cfr |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Credential
Specifica un account utente con diritti per installare un modulo per un provider di pacchetti o un'origine specificati.
Proprietà dei parametri
| Tipo: | PSCredential |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Force
Il cmdlet proxy ignora questo parametro perché non è supportato da Install-PSResource.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-InputObject
Usato per l'input della pipeline. Viene generato un errore se un valore fornito direttamente a InputObject. Usare la pipeline per passare oggetti con il parametro InputObject .
Proprietà dei parametri
| Tipo: | PSObject[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
InputObject
| Posizione: | 0 |
| Obbligatorio: | True |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-MaximumVersion
Il cmdlet proxy usa il valore di questo parametro per creare una stringa di ricerca della versione NuGet da usare con il parametro Version di Install-PSResource.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
NameParameterSet
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-MinimumVersion
Il cmdlet proxy usa il valore di questo parametro per creare una stringa di ricerca della versione NuGet da usare con il parametro Version di Install-PSResource.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
NameParameterSet
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Name
Specifica i nomi esatti dei moduli da installare dalla raccolta online. Viene accettato un elenco delimitato da virgole di nomi di modulo. Il nome del modulo deve corrispondere al nome del modulo nel repository. Usare Find-Module per ottenere un elenco di nomi di modulo.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
NameParameterSet
| Posizione: | 0 |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-PassThru
Quando si usa il parametro PassThru , Install-Module restituisce un oggetto PSRepositoryItemInfo per il modulo. Si tratta delle stesse informazioni ottenute dal Find-Module cmdlet .
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Proxy
Il cmdlet proxy ignora questo parametro perché non è supportato da Install-PSResource.
Proprietà dei parametri
| Tipo: | Uri |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-ProxyCredential
Il cmdlet proxy ignora questo parametro perché non è supportato da Install-PSResource.
Proprietà dei parametri
| Tipo: | PSCredential |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Repository
Usare il parametro Repository per specificare il nome del repository da cui scaricare e installare un modulo. Usato quando vengono registrati più repository. Specifica il nome di un repository registrato nel Install-Module comando . Per registrare un repository, usare Register-PSRepository.
Per visualizzare i repository registrati, usare Get-PSRepository.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
NameParameterSet
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-RequiredVersion
Il cmdlet proxy usa il valore di questo parametro per creare una stringa di ricerca della versione NuGet da usare con il parametro Version di Install-PSResource.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
NameParameterSet
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Scope
Specifica l'ambito di installazione del modulo. I valori accettabili per questo parametro sono AllUsers e CurrentUser.
L'ambito AllUsers installa i moduli in un percorso accessibile a tutti gli utenti del computer:
$env:ProgramFiles\PowerShell\Modules
CurrentUser installa i moduli in un percorso accessibile solo all'utente corrente del computer. Per esempio:
$HOME\Documents\PowerShell\Modules
Quando non è definito alcun ambito , il valore predefinito viene impostato in base alla versione di PowerShellGet.
- Nelle versioni di PowerShellGet 1.x il valore predefinito è AllUsers, che richiede l'elevazione dei privilegi per l'installazione.
- Per PowerShellGet versioni 2.0.0 e successive in PowerShell 6 o versioni successive:
- Il valore predefinito è CurrentUser, che non richiede l'elevazione dei privilegi per l'installazione.
- Se si esegue in una sessione con privilegi elevati, il valore predefinito è AllUsers.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Valori accettati: | CurrentUser, AllUsers |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-SkipPublisherCheck
Il cmdlet proxy trasforma questo parametro in AuthenticodeCheck prima di chiamare Install-PSResource.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WhatIf
Mostra cosa accadrebbe se è stato eseguito un Install-Module comando. Il cmdlet non viene eseguito.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Wi |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.
Input
PSRepositoryItemInfo
Find-Module crea oggetti PSRepositoryItemInfo che possono essere inviati alla pipeline a Install-Module.
String
PSObject
String
PSCredential
Uri
Output
Microsoft.PowerShell.Commands.PSRepositoryItemInfo
Quando si usa il parametro PassThru , Install-Module restituisce un oggetto PSRepositoryItemInfo per il modulo. Si tratta delle stesse informazioni ottenute dal Find-Module cmdlet .
Note
PowerShell include gli alias seguenti per Install-Module:
- Tutte le piattaforme:
inmo
Install-Module viene eseguito in PowerShell 5.0 o versioni successive in Windows 7 o Windows 2008 R2 e versioni successive di Windows.
Importante
A partire da aprile 2020, PowerShell Gallery non supporta più le versioni 1.0 e 1.1 di Transport Layer Security (TLS). Se non si usa TLS 1.2 o versione successiva, si riceverà un errore quando si prova ad accedere a PowerShell Gallery. Usare il comando seguente per assicurarsi di usare TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Per altre informazioni, vedere l'annuncio nel blog di PowerShell.
Come procedura consigliata per la sicurezza, valutare il codice di un modulo prima di eseguire qualsiasi cmdlet o funzioni per la prima volta. Per impedire l'esecuzione di moduli contenenti codice dannoso, i moduli installati non vengono importati automaticamente dopo l'installazione.
Se il nome del modulo specificato dal parametro Name non esiste nel repository, Install-Module restituisce un errore.
Per installare più moduli, usare il parametro Name e specificare una matrice delimitata da virgole di nomi di modulo. Se si specificano più nomi di modulo, non è possibile usare MinimumVersion, MaximumVersion o RequiredVersion.
Find-Module crea oggetti PSRepositoryItemInfo che possono essere inviati alla pipeline a Install-Module. La pipeline è un altro modo per specificare più moduli da installare in un singolo comando.
Per impostazione predefinita, i moduli per l'ambito di AllUsers vengono installati in $env:ProgramFiles\PowerShell\Modules. L'impostazione predefinita impedisce confusione quando si installano le risorse DSC (Desired State Configuration) di PowerShell.
L'installazione di un modulo non riesce e non può essere importata se non ha un .psm1oggetto , .psd1o .dll con lo stesso nome all'interno della cartella. Usare il parametro Force per installare il modulo.
Se la versione di un modulo esistente corrisponde al nome specificato dal parametro Name e il parametro MinimumVersion o RequiredVersion non vengono usati, Install-Module continua automaticamente ma non installa il modulo.
Se la versione di un modulo esistente è maggiore del valore del parametro MinimumVersion o uguale al valore del parametro RequiredVersion , Install-Module continua automaticamente ma non installa il modulo.
Se il modulo esistente non corrisponde ai valori specificati dai parametri MinimumVersion o RequiredVersion , si verifica un errore nel Install-Module comando . Ad esempio, se la versione del modulo installato esistente è inferiore al valore MinimumVersion o non è uguale al valore RequiredVersion .
Install-Module installa anche tutti i moduli dipendenti specificati come richiesto dal server di pubblicazione del modulo.
Il server di pubblicazione elenca i moduli necessari e le relative versioni nel manifesto del modulo.