Update-Help

Scarica e installa nel computer i file della Guida più recenti.

Sintassi

Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [[-SourcePath] <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-Scope <UpdateHelpScope>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [-LiteralPath <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-Scope <UpdateHelpScope>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Descrizione

Il Update-Help cmdlet scarica i file della Guida più recenti per i moduli di PowerShell e li installa nel computer. Non è necessario riavviare PowerShell per rendere effettiva la modifica. È possibile usare il Get-Help cmdlet per visualizzare immediatamente i nuovi file della Guida.

Update-Help controlla la versione dei file della Guida nel computer. Se non si hanno file della Guida per un modulo o se i file della Guida non sono aggiornati, Update-Help scarica i file della Guida più recenti. I file della Guida possono essere scaricati e installati da Internet o da una condivisione file.

Senza parametri, Update-Help aggiorna i file della Guida per i moduli che supportano la Guida aggiornabile e vengono caricati nella sessione o installati in un percorso incluso in $env:PSModulePath. Per altre informazioni, vedere about_Updatable_Help.

Update-Help controlla la versione della Guida installata. Se Update-Help non riesce a trovare i file della Guida aggiornati per un modulo, continua automaticamente senza visualizzare un messaggio di errore. Usare il parametro Force per ignorare il controllo della versione. Usare il parametro Verbose per visualizzare i dettagli sullo stato e sullo stato di avanzamento. Usare il parametro Module per aggiornare i file della Guida per un modulo specifico.

È anche possibile usare Update-Help nei computer che non sono connessi a Internet. Usare prima di tutto il Save-Helpcmdlet per scaricare i file della Guida da Internet e salvarli in una cartella condivisa accessibile al sistema non connesso a Internet. Usare quindi il parametro SourcePath di Update-Help per scaricare i file della Guida aggiornati dal file condiviso e installarli nel computer.

Il Update-Help cmdlet è stato introdotto in Windows PowerShell 3.0.

Importante

Update-Help richiede privilegi amministrativi in PowerShell 6.0 e versioni successive. PowerShell 6.1 e versioni successive impostano l'ambito predefinito su CurrentUser. Prima di PowerShell 6.1, il parametro Scope non era disponibile.

Per aggiornare i file della Guida per i moduli di PowerShell principali, è necessario essere membri del gruppo Amministrazione istrators nel computer.

Per scaricare o aggiornare i file della Guida per i moduli nella directory di installazione di PowerShell ($PSHOME\Modules), inclusi i moduli di PowerShell Core, avviare PowerShell usando l'opzione Esegui come amministratore . Ad esempio: Start-Process pwsh.exe -Verb RunAs.

Esempio

Esempio 1: Aggiornare i file della Guida per tutti i moduli

Il Update-Help cmdlet aggiorna i file della Guida per i moduli installati che supportano la Guida aggiornabile. La lingua delle impostazioni cultura dell'interfaccia utente è impostata nel sistema operativo.

Update-Help

Esempio 2: Aggiornare i file della Guida per i moduli specificati

Il Update-Help cmdlet aggiorna i file della Guida solo per i nomi dei moduli che iniziano con Microsoft.PowerShell.

Update-Help -Module Microsoft.PowerShell*

Esempio 3: Aggiornamento della Guida in un sistema non impostato sulle impostazioni locali en-US

Il Update-Help cmdlet è progettato per scaricare la Guida in più lingue. Tuttavia, quando non è disponibile alcuna guida per la lingua usata dal sistema, viene visualizzato un messaggio di errore per le impostazioni cultura del modulo e dell'interfaccia utente.

In questo esempio Update-Help viene eseguito in un sistema impostato sulle en-GB impostazioni locali.

Update-Help Microsoft.PowerShell.Utility -Force

Update-Help: Failed to update Help for the module(s) 'Microsoft.PowerShell.Utility' with
UI culture(s) {en-GB} : The specified culture is not supported: en-GB. Specify a culture
from the following list: {en-US}..
English-US help content is available and can be installed using: Update-Help -UICulture en-US.

I file della Guida vengono sempre pubblicati per le en-US impostazioni locali. Per scaricare la Guida in lingua inglese, eseguire Update-Help con il parametro UICulture e specificare le en-US impostazioni locali.

Esempio 4: Aggiornare i file della Guida in più computer da una condivisione file

In questo esempio i file della Guida aggiornati vengono scaricati da Internet e salvati in una condivisione file. Le credenziali utente sono necessarie per accedere alla condivisione file e installare gli aggiornamenti. Quando si usa una condivisione file, è possibile aggiornare i computer che si trovano dietro firewall o che non sono connessi a Internet.

Save-Help -DestinationPath \\Server01\Share\PSHelp -Credential Domain01\Admin01
Invoke-Command -ComputerName (Get-Content Servers.txt) -ScriptBlock {
     Update-Help -SourcePath \\Server01\Share\PSHelp -Credential Domain01\Admin01
}

Il Save-Help comando scarica i file della Guida più recenti per tutti i moduli che supportano la Guida aggiornabile. Il parametro DestinationPath salva i file nella \\Server01\Share\PSHelp condivisione file. Il parametro Credential consente di specificare un utente autorizzato ad accedere alla condivisione file.

Il Invoke-Command cmdlet esegue comandi remoti Update-Help in più computer. Il parametro ComputerName ottiene un elenco di computer remoti dal file Servers.txt . Il parametro ScriptBlock esegue il comando e usa il Update-Helpparametro SourcePath per specificare la condivisione file contenente i file della Guida aggiornati. Il parametro Credential specifica un utente che può accedere alla condivisione file ed eseguire il comando remoto Update-Help .

Esempio 5: Ottenere un elenco di file della Guida aggiornati

La Update-Help Guida degli aggiornamenti dei cmdlet per un modulo specificato. Il cmdlet usa il parametro comune Verbose per visualizzare l'elenco dei file della Guida aggiornati. È possibile usare Verbose per visualizzare l'output per tutti i file della Guida o i file della Guida per un modulo specifico.

Senza il parametro Verbose , Update-Help non vengono visualizzati i risultati del comando. L'output dei parametri dettagliato è utile per verificare che i file della Guida siano stati aggiornati o se è installata la versione più recente.

Update-Help -Module Microsoft.PowerShell.Utility -Verbose

Esempio 6: Trovare moduli che supportano la Guida aggiornabile

Questo esempio elenca i moduli che supportano la Guida aggiornabile. Il comando usa la proprietà HelpInfoUri del modulo per identificare i moduli che supportano la Guida aggiornabile. La proprietà HelpInfoUri contiene un URL reindirizzato quando viene eseguito il Update-Help cmdlet.

Get-Module -ListAvailable | Where-Object -Property HelpInfoUri

Directory: C:\program files\powershell\6\Modules

ModuleType Version    Name                                PSEdition ExportedCommands
---------- -------    ----                                --------- ----------------
Manifest   6.1.0.0    CimCmdlets                          Core      {Get-CimAssociatedInstance... }
Manifest   1.2.2.0    Microsoft.PowerShell.Archive        Desk      {Compress-Archive... }
Manifest   6.1.0.0    Microsoft.PowerShell.Diagnostics    Core      {Get-WinEvent, New-WinEvent}

    Directory: C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules

ModuleType Version    Name                                PSEdition ExportedCommands
---------- -------    ----                                --------- ----------------
Manifest   2.0.1.0    Appx                                Core,Desk {Add-AppxPackage, ... }
Script     1.0.0.0    AssignedAccess                      Core,Desk {Clear-AssignedAccess, ... }
Manifest   1.0.0.0    BitLocker                           Core,Desk {Unlock-BitLocker, ... }

Esempio 7: File della Guida aggiornati dell'inventario

In questo esempio, lo script Get-UpdateHelpVersion.ps1 crea un inventario dei file della Guida aggiornabili per ogni modulo e i relativi numeri di versione.

Lo script identifica i moduli che supportano la Guida aggiornabile usando la proprietà HelpInfoUri dei moduli. Per i moduli che supportano la Guida aggiornabile, lo script cerca e analizza il file di informazioni della Guida (*helpinfo.xml) per trovare il numero di versione più recente.

Lo script usa la classe PSCustomObject e una tabella hash per creare un oggetto di output personalizzato.

# Get-UpdateHelpVersion.ps1
Param(
    [parameter(Mandatory=$False)]
    [String[]]
    $Module
)
$HelpInfoNamespace = @{helpInfo='http://schemas.microsoft.com/powershell/help/2010/05'}

if ($Module) { $Modules = Get-Module $Module -ListAvailable | where {$_.HelpInfoUri} }
else { $Modules = Get-Module -ListAvailable | where {$_.HelpInfoUri} }

foreach ($mModule in $Modules)
{
    $mDir = $mModule.ModuleBase

    if (Test-Path $mdir\*helpinfo.xml)
    {
        $mName=$mModule.Name
        $mNodes = dir $mdir\*helpinfo.xml -ErrorAction SilentlyContinue |
            Select-Xml -Namespace $HelpInfoNamespace -XPath "//helpInfo:UICulture"
        foreach ($mNode in $mNodes)
        {
            $mCulture=$mNode.Node.UICultureName
            $mVer=$mNode.Node.UICultureVersion

            [PSCustomObject]@{"ModuleName"=$mName; "Culture"=$mCulture; "Version"=$mVer}
        }
    }
}

ModuleName                              Culture                                 Version
----------                              -------                                 -------
ActiveDirectory                         en-US                                   3.0.0.0
ADCSAdministration                      en-US                                   3.0.0.0
ADCSDeployment                          en-US                                   3.0.0.0
ADDSDeployment                          en-US                                   3.0.0.0
ADFS                                    en-US                                   3.0.0.0

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

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

-Credential

Specifica le credenziali di un utente che dispone dell'autorizzazione per accedere al percorso del file system specificato da SourcePath. Questo parametro è valido solo quando il parametro SourcePath o LiteralPath viene usato nel comando .

Il parametro Credential consente di eseguire Update-Help comandi con il parametro SourcePath nei computer remoti. Fornendo credenziali esplicite, è possibile eseguire il comando in un computer remoto e accedere a una condivisione file in un terzo computer senza riscontrare un errore di accesso negato o usando l'autenticazione CredSSP per delegare le credenziali.

Digitare un nome utente, ad esempio User01 o Domain01\User01, oppure immettere un oggetto PSCredential generato dal Get-Credential cmdlet. Se si digita un nome utente, viene richiesto di immettere la password.

Le credenziali vengono archiviate in un oggetto PSCredential e la password viene archiviata come SecureString.

Nota

Per altre informazioni sulla protezione dei dati SecureString , vedere How secure is SecureString?.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Indica che questo cmdlet non segue la limitazione una volta al giorno, ignora il controllo della versione e scarica i file che superano il limite di 1 GB.

Senza questo parametro, Update-Help viene eseguito una sola volta in ogni periodo di 24 ore. I download sono limitati a 1 GB di contenuto non compresso per modulo e i file della Guida vengono installati solo quando sono più recenti dei file esistenti nel computer.

Il limite una volta al giorno protegge i server che ospitano i file della Guida e semplifica l'aggiunta di un Update-Help comando al profilo di PowerShell senza incorrere nel costo delle risorse delle connessioni ripetute o dei download.

Per aggiornare la Guida per un modulo in più impostazioni cultura dell'interfaccia utente senza il parametro Force , includere tutte le impostazioni cultura dell'interfaccia utente nello stesso comando, ad esempio:

Update-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR

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

-FullyQualifiedModule

Il valore può essere un nome di modulo, una specifica completa del modulo o un percorso di un file di modulo.

Quando il valore è un percorso, il percorso può essere completo o relativo. Un percorso relativo viene risolto rispetto allo script che contiene l'istruzione using.

Quando il valore è un nome o una specifica del modulo, PowerShell cerca il modulo specificato in PSModulePath .

Una specifica del modulo è una tabella hash con le chiavi seguenti.

  • ModuleName - Obbligatorio Specifica il nome del modulo.
  • GUID - Facoltativo Specifica il GUID del modulo.
  • È anche obbligatorio specificare almeno una delle tre chiavi seguenti.
    • ModuleVersion - Specifica una versione minima accettabile del modulo.
    • MaximumVersion - Specifica la versione massima accettabile del modulo.
    • RequiredVersion - Specifica una versione esatta e obbligatoria del modulo. Non è possibile usare questa opzione con le altre chiavi di versione.

Non è possibile specificare il parametro FullyQualifiedModule nello stesso comando di un parametro Module .

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

-LiteralPath

Specifica la cartella per i file della Guida aggiornati anziché scaricarli da Internet. Usare questo parametro o SourcePath se è stato usato il Save-Help cmdlet per scaricare i file della Guida in una directory.

È possibile eseguire la Get-Item pipeline di un oggetto directory, ad esempio dai cmdlet o Get-ChildItem , a Update-Help.

A differenza del valore di SourcePath, il valore di LiteralPath viene usato esattamente come viene digitato. Nessun carattere viene interpretato come carattere jolly. Se il percorso include caratteri di escape, racchiuderlo tra virgolette singole. Le virgolette singole indicano a PowerShell di non interpretare alcun carattere come sequenze di escape.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Module

Aggiorna la Guida per i moduli specificati. Immettere uno o più nomi di modulo o modelli di nome in un elenco delimitato da virgole oppure specificare un file che elenca un nome di modulo in ogni riga. I caratteri jolly sono consentiti. È possibile eseguire la pipeline dei Get-Module moduli dal cmdlet al Update-Help cmdlet .

I moduli specificati devono essere installati nel computer, ma non devono essere importati nella sessione corrente. È possibile specificare qualsiasi modulo nella sessione o in qualsiasi modulo installato in un percorso elencato nella $env:PSModulePath variabile di ambiente.

Il valore (tutti) tenta di * aggiornare la Guida per tutti i moduli installati nel computer. Sono inclusi i moduli che non supportano la Guida aggiornabile. Questo valore potrebbe generare errori quando il comando rileva moduli che non supportano la Guida aggiornabile. Eseguire invece Update-Help senza parametri.

Il parametro Module del Update-Help cmdlet non accetta il percorso completo di un file di modulo o di un file manifesto del modulo. Per aggiornare la Guida per un modulo che non si trova in un $env:PSModulePath percorso, importare il modulo nella sessione corrente prima di eseguire il Update-Help comando.

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

-Recurse

Esegue una ricerca ricorsiva per i file della Guida nella directory specificata. Questo parametro è valido solo quando il comando usa il parametro SourcePath .

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

-Scope

Specifica l'ambito di sistema in cui viene aggiornata la Guida. Aggiornamenti al L'ambito AllUsers richiede privilegi amministrativi nei sistemi Windows. Il -Scope parametro è stato introdotto in PowerShell Core versione 6.1.

CurrentUser è l'ambito predefinito per i file della Guida in PowerShell 6.1 e versioni successive. È possibile specificare AllUsers per installare o aggiornare la Guida per tutti gli utenti. Nei sistemi sudo Unix sono necessari privilegi per aggiornare la Guida per tutti gli utenti. Ad esempio: sudo pwsh -c Update-Help

I valori accettabili sono:

  • CurrentUser
  • AllUsers
Type:UpdateHelpScope
Position:Named
Default value:CurrentUser
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SourcePath

Specifica una cartella del file system in cui Update-Help vengono aggiornati i file della Guida, anziché scaricarli da Internet. Immettere il percorso di una cartella. Non specificare un nome file o un'estensione di file. È possibile eseguire la pipeline di una cartella, ad esempio uno dei Get-Item cmdlet o Get-ChildItem , in Update-Help.

Per impostazione predefinita, Update-Help scarica i file della Guida aggiornati da Internet. Usare SourcePath quando è stato usato il Save-Help cmdlet per scaricare i file della Guida aggiornati in una directory.

Per specificare un valore predefinito per SourcePath, passare a Criteri di gruppo, Configurazione computer e Impostare il percorso di origine predefinito per Update-Help. Questa impostazione di Criteri di gruppo impedisce agli utenti di usare Update-Help per scaricare i file della Guida da Internet. Per altre informazioni, vedere Informazioni sulle impostazioni di Criteri di gruppo.

Type:String[]
Aliases:Path
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UICulture

Specifica i valori delle impostazioni cultura dell'interfaccia utente per i quali questo cmdlet ottiene i file della Guida aggiornati. Immettere uno o più codici di lingua, ad esempio es-ES, una variabile contenente oggetti impostazioni cultura o un comando che ottiene oggetti impostazioni cultura, ad esempio un Get-Culture comando o Get-UICulture . I caratteri jolly non sono consentiti.

Per impostazione predefinita, Update-Help ottiene i file della Guida nelle impostazioni cultura dell'interfaccia utente impostate per il sistema operativo o le impostazioni cultura di fallback. Se si specifica il parametro UICulture , Update-Help cerca solo la guida per la lingua specificata.

A partire da PowerShell 7.4, è possibile usare un codice di lingua parziale, ad esempio en per scaricare la Guida in inglese per qualsiasi area.

Nota

Ubuntu 18.04 ha modificato l'impostazione predefinita delle impostazioni locali in C.UTF.8, che non è una lingua dell'interfaccia utente riconosciuta. Update-Help invisibile all'utente non riesce a scaricare la Guida a meno che non si usi questo parametro con impostazioni locali supportate come en-US. Questo problema può verificarsi in qualsiasi piattaforma che usa un valore non supportato.

Type:CultureInfo[]
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseDefaultCredentials

Indica che Update-Help esegue il comando, incluso il download Internet, usando le credenziali dell'utente corrente. Per impostazione predefinita, il comando viene eseguito senza credenziali esplicite.

Questo parametro è efficace solo quando il download Web usa NT LAN Manager (NTLM), negotiate o autenticazione basata su Kerberos.

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

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

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

Input

DirectoryInfo

È possibile inviare tramite pipe un oggetto percorso directory a questo cmdlet.

PSModuleInfo

È possibile inviare tramite pipe un oggetto modulo a questo cmdlet.

Output

None

Questo cmdlet non restituisce output.

Note

Per aggiornare la Guida per i moduli di PowerShell principali, che contengono i comandi installati con PowerShell o qualsiasi modulo nella $PSHOME\Modules directory, avviare PowerShell con l'opzione Esegui come amministratore.

Solo i membri del gruppo Amministrazione istrators nel computer possono aggiornare la Guida per i moduli di PowerShell principali, i comandi installati insieme a PowerShell e per i moduli nella $PSHOME\Modules cartella . Se non si dispone dell'autorizzazione per aggiornare i file della Guida, è possibile leggere i file della Guida online. Ad esempio: Get-Help Update-Help -Online.

I moduli sono l'unità minima della Guida aggiornabile. Non è possibile aggiornare la Guida per un cmdlet specifico. Per trovare il modulo contenente un cmdlet specifico, usare la proprietà ModuleName del Get-Command cmdlet, (Get-Command Update-Help).ModuleNamead esempio .

Poiché i file della Guida vengono installati nella directory del modulo, il cmdlet può installare il Update-Help file della Guida aggiornato solo per i moduli installati nel computer. Tuttavia, il Save-Help cmdlet può salvare la Guida per i moduli non installati nel computer.

Il Update-Help cmdlet è stato introdotto in Windows PowerShell 3.0. Non funziona nelle versioni precedenti di PowerShell. Nei computer con Windows PowerShell 2.0 e Windows PowerShell 3.0 usare il Update-Help cmdlet in una sessione di Windows PowerShell 3.0 per scaricare e aggiornare i file della Guida. I file della Guida sono disponibili sia per Windows PowerShell 2.0 che per Windows PowerShell 3.0.

I Update-Help cmdlet e Save-Help usano le porte seguenti per scaricare i file della Guida: Porta 80 per HTTP e porta 443 per HTTPS.

Update-Help supporta tutti i moduli e gli snap-in di PowerShell principali. Non supporta altri snap-in.

Per aggiornare la Guida per un modulo in un percorso non elencato nella $env:PSModulePath variabile di ambiente, importare il modulo nella sessione corrente e quindi eseguire un Update-Help comando. Eseguire Update-Help senza parametri o usare il parametro Module per specificare il nome del modulo. Il parametro Module dei Update-Help cmdlet e Save-Help non accetta il percorso completo di un file di modulo o di un file manifesto del modulo.

Qualsiasi modulo può supportare la Guida aggiornabile. Per istruzioni sul supporto della Guida aggiornabile nei moduli creati, vedere Supporto della Guida aggiornabile.

I Update-Help cmdlet e Save-Help non sono supportati in Windows Preinstallation Environment (Windows PE).