about_History

Descrizione breve

Descrive come ottenere ed eseguire comandi nella cronologia dei comandi.

Descrizione lunga

Quando si immette un comando al prompt dei comandi, PowerShell salva il comando nella cronologia dei comandi. È possibile usare i comandi nella cronologia come record del lavoro. È anche possibile richiamare ed eseguire i comandi dalla cronologia dei comandi.

PowerShell ha due provider di cronologia diversi: la cronologia predefinita e la cronologia gestita dal modulo PSReadLine . Le cronologie vengono gestite separatamente, ma entrambe le cronologie sono disponibili nelle sessioni in cui viene caricato PSReadLine .

Uso della cronologia di PSReadLine

La cronologia PSReadLine tiene traccia dei comandi usati in tutte le sessioni di PowerShell. La cronologia viene scritta in un file centrale per ogni host. Tale file di cronologia è disponibile per tutte le sessioni e contiene tutta la cronologia precedente. La cronologia non viene eliminata al termine della sessione. Inoltre, tale cronologia non può essere gestita dai *-History cmdlet. Per altre informazioni, vedere about_PSReadLine.

Uso della cronologia di sessione predefinita

La cronologia predefinita tiene traccia solo dei comandi usati nella sessione corrente. La cronologia non è disponibile per altre sessioni e viene eliminata al termine della sessione.

Cmdlet della cronologia

PowerShell include un set di cmdlet che gestiscono la cronologia dei comandi.

Cmdlet Alias Descrizione
Get-History h Ottiene la cronologia dei comandi.
Invoke-History r Esegue un comando nella cronologia dei comandi.
Add-History Aggiunge un comando alla cronologia dei comandi.
Clear-History clhy Elimina i comandi dalla cronologia dei comandi.

Tasti di scelta rapida per la gestione della cronologia

Nella console di PowerShell è possibile usare i collegamenti seguenti per gestire la cronologia dei comandi.

  • UpArrow : visualizza il comando precedente.
  • DownArrow : visualizza il comando successivo.
  • F7 : visualizza la cronologia dei comandi.
  • ESC : per nascondere la cronologia.
  • F8 : trova un comando. Digitare uno o più caratteri, quindi premere F8. Premere di nuovo F8 nell'istanza successiva.
  • F9 : trovare un comando in base all'ID cronologia. Digitare l'ID cronologia, quindi premere F9. Premere F7 per trovare l'ID.
  • #<string>Scheda : consente di cercare *<string>* la cronologia e di restituire la corrispondenza più recente. Se si preme tabulazioni ripetutamente, scorre gli elementi corrispondenti nella cronologia.

Nota

Queste associazioni di chiavi vengono implementate dall'applicazione host della console. Altre applicazioni, ad esempio Visual Studio Code o Terminale Windows, possono avere associazioni di tasti diverse. Le associazioni possono essere sottoposte a override dal modulo PSReadLine. PSReadLine viene caricato automaticamente all'avvio di una sessione di PowerShell. Con PSReadLine caricato, F7 e F9 non sono associati ad alcuna funzione. PSReadLine non fornisce funzionalità equivalenti. Per altre informazioni, vedere about_PSReadLine.

MaximumHistoryCount

La $MaximumHistoryCount variabile preferenza determina il numero massimo di comandi salvati da PowerShell nella cronologia dei comandi. Il valore predefinito è 4096.

Ad esempio, il comando seguente riduce i $MaximumHistoryCount comandi a 100:

$MaximumHistoryCount = 100

Per applicare l'impostazione, riavviare PowerShell.

Per salvare il nuovo valore della variabile per tutte le sessioni di PowerShell, aggiungere l'istruzione di assegnazione a un profilo di PowerShell. Per altre informazioni sui profili, vedere about_Profiles.

Per altre informazioni sulla variabile di $MaximumHistoryCount preferenza, vedere about_Preference_Variables.

Ordine dei comandi nella cronologia

I comandi vengono aggiunti alla cronologia al termine dell'esecuzione del comando, non quando viene immesso il comando. Se i comandi richiedono del tempo o se i comandi vengono eseguiti in un prompt annidato, i comandi potrebbero sembrare non ordinati nella cronologia. I comandi eseguiti in un prompt annidato vengono completati solo quando si esce dal livello di prompt.

Vedi anche