Condividi tramite


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 di guida per un modulo o se i file della Guida sono obsoleti, Update-Help scaricare 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 è possibile trovare i file della Guida aggiornati per un modulo, continua in modo invisibile all'utente 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 dalla condivisione 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 imposta l'ambito predefinito su CurrentUser. Prima di PowerShell 6.1, il parametro Scope non era disponibile.

È necessario essere un membro del gruppo Administrators nel computer per aggiornare i file della Guida per i moduli di PowerShell principali.

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, Update-Help non riesce in modo invisibile a meno che non si usi il parametro UICulture .

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

Update-Help Microsoft.PowerShell.Utility -Force
Update-Help Microsoft.PowerShell.Utility -Force -UICulture en-GB

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 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 viene usata una condivisione file, è possibile aggiornare i computer che si trovano dietro firewall o 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 specifica un utente che dispone dell'autorizzazione per 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-Help parametro 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

Il Update-Help cmdlet aggiorna la Guida 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 la versione più recente è installata.

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

Esempio 6: Trovare moduli che supportano la Guida aggiornabile

In questo esempio vengono elencati 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: Inventario dei file della Guida aggiornati

In questo esempio lo script Get-UpdateHelpVersion.ps1 crea un inventario dei file della Guida aggiornabile 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 la conferma dell'utente 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 nel comando viene usato il parametro SourcePath o LiteralPath.

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 l'uso dell'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?.For more information about SecureString data protection, see 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 di 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 rispetto ai file esistenti nel computer.

Il limite di 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 della risorsa di connessioni o download ripetuti.

Per aggiornare la Guida per un modulo con 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 - Opzionale Specifica il GUID del modulo.
  • È anche necessario 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 version.

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 Get-Module pipeline dei 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 può 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 nell'ambito AllUsers richiedono 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 del nome file. È possibile eseguire la pipeline di una cartella, ad esempio uno dai Get-Item cmdlet o Get-ChildItem , a 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 usati Update-Help per ottenere 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 cultura, ad esempio un Get-Culture comando o Get-UICulture . I caratteri jolly non sono consentiti e non è possibile inviare un codice di lingua parziale, ad esempio de.

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

Nota

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

I comandi che usano il parametro UICulture abbia riescono solo quando il modulo fornisce file della Guida per le impostazioni cultura dell'interfaccia utente specificata. Se il comando ha esito negativo perché le impostazioni cultura dell'interfaccia utente specificate non sono supportate, viene visualizzato un messaggio di errore.

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 è valido 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 l'esito in caso di 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 un oggetto percorso directory a questo cmdlet.

PSModuleInfo

È possibile inviare un oggetto modulo a questo cmdlet.

Output

None

Questo cmdlet non restituisce output.

Note

Per aggiornare 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 Administrators 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, ad esempio (Get-Command Update-Help).ModuleName.

Poiché i file della Guida vengono installati nella directory del modulo, il Update-Help cmdlet può installare il file della Guida aggiornato solo per i moduli installati nel computer. Tuttavia, il Save-Help cmdlet può salvare la Guida per i moduli che non sono 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 Windows PowerShell 3.0 per scaricare e aggiornare i file della Guida. I file della Guida sono disponibili per Windows PowerShell 2.0 e 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 variabile di ambiente, importare il modulo nella $env:PSModulePath 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 cmdlet e Save-Help non accetta il percorso completo di Update-Help un file di modulo o di un file manifesto del modulo.

Qualsiasi modulo può supportare la Guida aggiornabile. Per istruzioni per il 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).