Add-History
Acrescenta entradas ao histórico da sessão.
Sintaxe
Default (Predefinição)
Add-History
[[-InputObject] <PSObject[]>]
[-Passthru]
[<CommonParameters>]
Description
O cmdlet Add-History adiciona entradas ao final do histórico da sessão, ou seja, à lista de comandos inseridos durante a sessão atual.
Você pode usar o cmdlet Get-History para obter os comandos e passá-los para Add-History, ou pode exportar os comandos para um arquivo CSV ou XML, importar os comandos e passar o arquivo importado para Add-History.
Você pode usar esse cmdlet para adicionar comandos específicos ao histórico ou para criar um único arquivo de histórico que inclua comandos de mais de uma sessão.
Exemplos
Exemplo 1: Adicionar comandos ao histórico de uma sessão diferente
# Get objects representing the commands in the history and exports them to the History.csv file.
Get-History | Export-Csv c:\testing\history.csv
# Use the `Import-Csv` cmdlet to import the objects in the History.csv file.
Import-Csv history.csv | Add-History
Esses comandos adicionam os comandos digitados em uma sessão do Windows PowerShell ao histórico de uma sessão diferente do Windows PowerShell. O segundo comando é digitado na linha de comando de uma sessão diferente.
O operador de pipeline | passa os objetos para o cmdlet Add-History, que adiciona os objetos que representam os comandos no arquivo History.csv ao histórico de sessões atual.
Exemplo 2: Importar e executar comandos
Import-Clixml c:\temp\history.xml | Add-History -Passthru | ForEach-Object -Process {Invoke-History}
Este comando importa comandos do arquivo History.xml, adiciona-os ao histórico da sessão atual e executa os comandos no histórico combinado.
O cmdlet Import-Clixml importa um histórico de comandos que foi exportado para o arquivo History.xml.
O operador de pipeline passa os comandos para o cmdlet Add-History, que adiciona os comandos ao histórico da sessão atual.
O parâmetro PassThru passa os objetos que representam os comandos adicionados para baixo no pipeline.
O cmdlet ForEach-Object aplicar o comando Invoke-History a cada um dos comandos no histórico combinado.
O comando Invoke-History é formatado como um bloco de script, entre chaves, conforme exigido pelo parâmetro Process do cmdlet ForEach-Object.
Exemplo 3: Adicionar comandos do histórico ao final do histórico
Get-History -Id 5 -Count 5 | Add-History
Este comando adiciona os cinco primeiros comandos do histórico ao final da lista de histórico.
Ele usa o cmdlet Get-History para obter os cinco comandos que terminam no comando 5.
O operador de pipeline transmite esses elementos para o cmdlet Add-History, que os adiciona ao histórico atual.
O comando Add-History não inclui parâmetros, mas o Windows PowerShell associa os objetos passados pelo pipeline ao parâmetro InputObject de Add-History.
Exemplo 4: Adicionar comandos em um arquivo .csv ao histórico atual
$a = Import-Csv c:\testing\history.csv
Add-History -InputObject $a -PassThru
Esses comandos adicionam os comandos no arquivo History.csv ao histórico de sessões atual.
O primeiro comando usa o cmdlet Import-Csv para importar os comandos no arquivo History.csv e armazenar seu conteúdo na variável $a.
O segundo comando usa o cmdlet Add-History para adicionar os comandos do History.csv ao histórico da sessão atual.
Ele usa o parâmetro InputObject para especificar a variável $a e o parâmetro PassThru para gerar um objeto a ser exibido na linha de comando.
Sem o parâmetro PassThru, o cmdlet Add-History não gera nenhuma saída.
Exemplo 5: Adicionar comandos em um arquivo .xml ao histórico atual
Add-History -InputObject (Import-Clixml c:\temp\history01.xml)
Este comando adiciona os comandos no arquivo History01.xml ao histórico da sessão atual.
Ele usa o parâmetro InputObject para passar os resultados do comando entre parênteses para o cmdlet Add-History.
O comando entre parênteses, que é executado primeiro, importa o arquivo History01.xml para o Windows PowerShell. Em seguida, o cmdlet Add-History adiciona os comandos no arquivo ao histórico da sessão.
Parâmetros
-InputObject
Especifica uma matriz de entradas a serem adicionadas ao histórico como objeto HistoryInfo ao histórico da sessão.
Você pode usar este parâmetro para submeter um objeto HistoryInfo, como os que são retornados pelos cmdlets Get-History, Import-Clixmlou Import-Csv, para Add-History.
Propriedades dos parâmetros
| Tipo: | PSObject[] |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | 0 |
| Obrigatório: | False |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Passthru
Indica que esse cmdlet retorna um objeto de histórico para cada entrada de histórico. Por padrão, esse cmdlet não gera nenhuma saída.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
HistoryInfo
Você pode canalizar um objeto HistoryInfo para esse cmdlet.
Saídas
None or Microsoft.PowerShell.Commands.HistoryInfo
Este cmdlet retorna um objeto HistoryInfo
Notas
O histórico da sessão é uma lista dos comandos inseridos durante a sessão, juntamente com o ID. O histórico da sessão representa a ordem de execução, o status e as horas de início e término do comando. À medida que você insere cada comando, o Windows PowerShell o adiciona ao histórico para que você possa reutilizá-lo. Para obter mais informações sobre o histórico da sessão, consulte about_History.
Para especificar os comandos a serem adicionados ao histórico, use o parâmetro InputObject. O comando
Add-Historyaceita apenas objetos HistoryInfo, como os retornados para cada comando pelo cmdletGet-History. Não é possível passar um caminho e nome de arquivo ou uma lista de comandos.Você pode usar o parâmetro InputObject para passar um arquivo de objetos HistoryInfo para
Add-History. Para fazer isso, exporte os resultados de um comandoGet-Historypara um arquivo usando o cmdletExport-CsvouExport-Clixmle, em seguida, importe o arquivo usando os cmdletsImport-CsvouImport-Clixml. Em seguida, você pode passar o arquivo de objetos HistoryInfo importados paraAdd-Historyatravés de um pipeline ou em uma variável. Para obter mais informações, consulte os exemplos.O ficheiro de objetos HistoryInfo que se passa para o cmdlet
Add-Historydeve incluir as informações de tipo, os cabeçalhos de coluna e todas as propriedades dos objetos HistoryInfo. Se você pretende passar os objetos de volta paraAdd-History, não use o parâmetro NoTypeInformation do cmdletExport-Csve não exclua as informações de tipo, cabeçalhos de coluna ou quaisquer campos no arquivo. Para modificar o histórico da sessão, exporte a sessão para um arquivo CSV ou XML, modifique o arquivo, importe o arquivo e useAdd-Historypara anexá-lo ao histórico da sessão atual.