Aggiunge voci alla cronologia della sessione.

Sintassi

Add-History [[-InputObject] <PSObject[]>] [-PassThru] [<CommonParameters>]

Descrizione

Il cmdlet Add-History aggiunge voci alla fine della cronologia della sessione, ovvero l'elenco dei comandi immessi durante la sessione corrente.

È possibile utilizzare il cmdlet Get-History per ottenere i comandi e passarli a Add-History oppure esportare i comandi in un file CSV o XML, importarli, quindi passare il file importato a Add-History. È possibile utilizzare questo cmdlet per aggiungere comandi specifici alla cronologia oppure per creare un singolo file di cronologia contenente i comandi per più sessioni.

Parametri

-InputObject <PSObject[]>

Aggiunge l'oggetto HistoryInfo specificato alla cronologia della sessione. È possibile utilizzare questo parametro per inviare un oggetto HistoryInfo da Get-History, Import-Clixml o Import-CSV a Add-History.

Obbligatorio?

false

Posizione?

1

Valore predefinito

Accettare input da pipeline?

true (ByValue)

Accettare caratteri jolly?

false

-PassThru

Restituisce un oggetto della cronologia per ogni voce della cronologia. Per impostazione predefinita, il cmdlet non genera alcun output.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

Microsoft.PowerShell.Commands.HistoryInfo

È possibile reindirizzare un oggetto HistoryInfo a Add-History.

Output

Nessuno o Microsoft.PowerShell.Commands.HistoryInfo

Quando si utilizza il parametro PassThru, Add-History genera un oggetto HistoryInfo. Negli altri casi, il cmdlet non genera alcun output.

Note

La cronologia della sessione è un elenco dei comandi immessi durante la sessione insieme all'ID. La cronologia della sessione rappresenta l'ordine di esecuzione, lo stato e le ore di inizio e di fine del comando. I comandi immessi vengono aggiunti da Windows PowerShell alla cronologia per consentirne il riutilizzo. Per ulteriori informazioni sulla cronologia della sessione, vedere about_History.

Per specificare i comandi da aggiungere alla cronologia, utilizzare il parametro InputObject. Il comando Add-History accetta solo oggetti HistoryInfo, ad esempio quelli generati per ogni comando tramite Get-History. Non è possibile passare un percorso e un nome file o un elenco di comandi a questo comando.

È possibile utilizzare il parametro -InputObject per passare un file di oggetti HistoryInfo ad Add-History. A tale scopo, esportare i risultati di un comando Get-History in un file utilizzando Export-CSV o Export-Clixml, quindi importare il file tramite Import-CSV o Import-Clixml. È quindi possibile passare il file degli oggetti HistoryInfo importati ad Add-History attraverso la pipeline o in una variabile. Per ulteriori informazioni, vedere gli esempi.

Il file degli oggetti HistoryInfo passato ad Add-History deve includere le informazioni sul tipo, le intestazioni di colonna e tutte le proprietà degli oggetti HistoryInfo. Se si desidera passare gli oggetti nuovamente ad Add-History, non utilizzare il parametro NoTypeInformation o Export-CSV e non eliminare le informazioni sul tipo, le intestazioni di colonna o qualsiasi campo nel file.

Per modificare la cronologia della sessione, esportare la sessione in un file CSV o XML, modificare il file, importarlo, quindi utilizzare Add-History per aggiungerlo alla cronologia della sessione corrente.

Esempio 1

C:\PS>get-history | export-csv c:\testing\history.csv

C:\PS>import-csv history.csv | add-history

Descrizione
-----------
Tramite questi comandi vengono aggiunti i comandi digitati in una sessione di Windows alla cronologia di una sessione di Windows PowerShell diversa. Con il primo comando vengono ottenuti gli oggetti che rappresentano i comandi inclusi nella cronologia. Gli oggetti vengono quindi esportati nel file History.csv. Il secondo comando viene digitato nella riga di comando di una sessione diversa. Viene utilizzato il cmdlet Import-Csv per importare gli oggetti nel file History.csv. L'operatore pipeline passa gli oggetti al cmdlet Add-History che consente di aggiungere alla cronologia della sessione corrente gli oggetti che rappresentano i comandi nel file History.csv.






Esempio 2

C:\PS>import-clixml c:\temp\history.xml | add-history -passthru | foreach-object {invoke-history}

Descrizione
-----------
Con questo comando i comandi vengono importati dal file History.xml, vengono aggiunti alla cronologia della sessione corrente, quindi vengono eseguiti nella cronologia combinata. 

Con il primo comando viene utilizzato il comando Import-Clixml per importare una cronologia di comandi esportata nel file History.xml. L'operatore pipeline (|) passa i comandi al parametro Add-History che li aggiunge alla cronologia della sessione corrente. Il parametro PassThru passa gli oggetti che rappresentano i comandi aggiunti attraverso la pipeline. 

Viene quindi utilizzato il cmdlet ForEach-Object per applicare il comando Invoke-History a ognuno dei comandi nella cronologia combinata. Il comando Invoke-History viene formattato come un blocco di script racchiuso tra parentesi graffe ({}) poiché ForEach-Object richiede un blocco di script anche quando è presente un solo comando da applicare.






Esempio 3

C:\PS>get-history -id 5 -count 5 | add-history

Descrizione
-----------
Tramite questo comando vengono aggiunti i primi cinque comandi della cronologia alla fine dell'elenco della cronologia. Viene utilizzato il cmdlet Get-History per ottenere i primi cinque comandi, fino al comando 5. L'operatore pipeline (|) passa tali comandi al cmdlet Add-History che li aggiunge alla cronologia corrente. Nel comando Add-History non è incluso alcun parametro, ma tramite Windows PowerShell gli oggetti passati attraverso la pipeline vengono associati al parametro InputObject.






Esempio 4

C:\PS>$a = import-csv c:\testing\history.csv

C:\PS>add-history -inputobject $a -passthru

Descrizione
-----------
Tramite questi comandi vengono aggiunti alla cronologia della sessione corrente i comandi inclusi nel file History.csv. Nel primo comando viene utilizzato il cmdlet Import-Csv per importare i comandi nel file History.csv e archiviarne il contenuto nella variabile $a. Nel secondo comando viene utilizzato il cmdlet Add-History per aggiungere i comandi dal file History.csv alla cronologia della sessione corrente. Vengono utilizzati il parametro InputObject per specificare la variabile $a e il parametro PassThru per generare un oggetto da visualizzare nella riga di comando. Se il parametro PassThru non viene specificato, Add-History non genera alcun output da visualizzare.






Esempio 5

C:\PS>add-history -inputobject (import-clixml c:\temp\history01.xml)

Descrizione
-----------
Tramite questo comando vengono aggiunti i comandi inclusi nel file History01.xml alla cronologia della sessione corrente. Viene utilizzato il parametro InputObject per passare i risultati del comando racchiuso tra parentesi ad Add-History. Con il comando tra parentesi, eseguito per primo, viene importato il file History01.xml in Windows PowerShell. Con Add-History i comandi inclusi nel file vengono aggiunti alla cronologia della sessione.






Vedere anche




Argomenti della Guida