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