Add-History
Acrescenta entradas ao histórico da sessão.
Add-History
[[-InputObject] <PSObject[]>]
[-PassThru]
[<CommonParameters>]
O cmdlet Add-History
adiciona entradas ao final do histórico de sessão, ou seja, a lista de comandos inseridos durante a sessão atual.
O histórico da sessão é uma lista dos comandos inseridos durante a sessão. O histórico da sessão representa a ordem de execução, o status e os horários de início e término do comando. À medida que você insere cada comando, o 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.
O histórico de sessão é gerenciado separadamente do histórico mantido pelo módulo PSReadLine. Os dois históricos estão disponíveis nas sessões em que se carrega PSReadLine. Esse cmdlet funciona apenas com o histórico da sessão. Para obter mais informações, consulte about_PSReadLine.
Você pode usar o cmdlet Get-History
para obter os comandos e passá-los para Add-History
ou 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 criar um único arquivo de histórico que inclua comandos de mais de uma sessão.
Este exemplo adiciona os comandos digitado em uma sessão do PowerShell ao histórico de uma sessão diferente do PowerShell.
Get-History | Export-Csv -Path C:\testing\history.csv -IncludeTypeInformation
Import-Csv -Path C:\testing\history.csv | Add-History
O primeiro comando obtém objetos que representam os comandos no histórico e os exporta para o arquivo History.csv
.
O segundo comando é digitado na linha de comando de uma sessão diferente. Ele usa o cmdlet Import-Csv
para importar os objetos no arquivo History.csv
. 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ão atual.
Este exemplo importa comandos do arquivo History.xml
, adiciona-os ao histórico de sessão atual e executa os comandos no histórico combinado.
Import-Clixml -Path C:\temp\history.xml | Add-History -PassThru | ForEach-Object -Process {Invoke-History}
O primeiro comando usa o cmdlet Import-Clixml
para importar 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 de sessão atual. O parâmetro PassThru passa os objetos que representam os comando adicionados abaixo do pipeline.
Em seguida, o comando usa o cmdlet ForEach-Object
para 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
.
Este exemplo adiciona os cinco primeiros comandos do histórico ao final da lista de comandos.
Get-History -Id 5 -Count 5 | Add-History
O cmdlet Get-History
obtém os cinco comandos que terminam no comando 5. O operador de pipeline passa-os ao cmdlet Add-History
, que acrescenta-os ao histórico atual. O comando Add-History
não inclui parâmetros, mas o PowerShell associa os objetos passados pelo pipeline ao parâmetro InputObject de Add-History
.
Este exemplo adiciona os comandos no arquivo History.csv
ao histórico de sessão atual.
$a = Import-Csv -Path C:\testing\history.csv
Add-History -InputObject $a -PassThru
O cmdlet Import-Csv
importa os comandos no arquivo History.csv
e armazena seu conteúdo na variável $a
.
O segundo comando usa o cmdlet Add-History
para adicionar os comandos de History.csv
ao histórico de 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.
Este exemplo adiciona os comandos no arquivo history.xml
ao histórico de sessão atual.
Add-History -InputObject (Import-Clixml -Path C:\temp\history.xml)
O parâmetro InputObject passa os resultados do comando entre parênteses para o cmdlet Add-History
. O comando entre parênteses, que é executado primeiro, importa o arquivo history.xml
para o PowerShell. O cmdlet Add-History
adiciona os comandos no arquivo ao histórico da sessão.
Especifica uma matriz de entradas a serem adicionadas ao histórico da sessão como um objeto HistoryInfo. Você pode usar esse parâmetro para enviar um objeto HistoryInfo, como os retornados pelos cmdlets Get-History
, Import-Clixml
ou Import-Csv
, para Add-History
.
Tipo: | PSObject[] |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
Indica que esse cmdlet retorna um objeto HistoryInfo para cada entrada de histórico. Por padrão, esse cmdlet não gera nenhuma saída.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Você pode redirecionar um objeto HistoryInfo para este cmdlet.
None
Por padrão, esse cmdlet não retorna nenhuma saída.
Quando você usa o parâmetro PassThru, este cmdlet retorna um objeto HistoryInfo.
O histórico da sessão é uma lista dos comandos inseridos durante a sessão junto com a ID. O histórico da sessão representa a ordem de execução, o status e os horários de início e término do comando. À medida que você insere cada comando, o 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-History
aceita apenas objetos HistoryInfo, como aqueles retornados para cada comando pelo cmdlet Get-History
. Não é possível passar um caminho e um 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 comando Get-History
para um arquivo usando o cmdlet Export-Csv
ou Export-Clixml
e importe o arquivo usando os cmdlets Import-Csv
ou Import-Clixml
. Em seguida, você pode passar o arquivo de objetos importados HistoryInfo para Add-History
por meio de um pipeline ou em uma variável. Para obter mais informações, consulte os exemplos.
O arquivo de objetos HistoryInfo que você passa para o cmdlet Add-History
deve incluir as informações de tipo, títulos de coluna e todas as propriedades dos objetos HistoryInfo. Se você pretende passar os objetos de volta para Add-History
, não use o parâmetro NoTypeInformation do cmdlet Export-Csv
e não exclua as informações de tipo, títulos 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 use Add-History
para anexá-lo ao histórico de sessão atual.
Comentários do PowerShell
O PowerShell é um projeto código aberto. Selecione um link para fornecer comentários: