Compartilhar via


Add-History

Anexa entradas ao histórico da sessão.

Sintaxe

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

Descrição

O cmdlet Add-History adiciona entradas ao fim 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 exportar os comandos para um arquivo CSV ou XML, importar os comandos e passar o arquivo importado para Add-History. Você pode utilizar esse cmdlet para adicionar comandos específicos ao histórico ou criar um arquivo de histórico único que inclua comandos de mais de uma sessão.

Parâmetros

-InputObject <PSObject[]>

Adiciona o objeto HistoryInfo especificado ao histórico da sessão. Você pode usar esse parâmetro para enviar um objeto HistoryInfo de Get-History, Import-Clixml ou Import-CSV para Add-History.

Necessário?

false

Posição?

1

Valor padrão

Aceitar entrada do pipeline?

true (ByValue)

Aceitar caracteres curinga?

false

-PassThru

Retorna um objeto de histórico para cada entrada de histórico. Por padrão, este cmdlet não gera nenhuma saída.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

Microsoft.PowerShell.Commands.HistoryInfo

É possível canalizar um objeto HistoryInfo para Add-History.

Saídas

Nenhum ou Microsoft.PowerShell.Commands.HistoryInfo

Quando você utiliza o parâmetro PassThru, Add-History gera um objeto HistoryInfo. Caso contrário, esse cmdlet não gera nenhuma saída.

Observações

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 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-History aceita apenas objetos HistoryInfo, como aqueles gerados para cada comando por Get-History. Não é possível passar para ele 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 comando Get-History para um arquivo usando Export-CSV ou Export-Clixml e, em seguida, importe o arquivo usando Import-CSV ou Import-Clixml. Em seguida, você pode passar o arquivo de objetos HistoryInfo importados 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 Add-History deve incluir as informações de tipo, os títulos das colunas e todas as propriedades dos objetos HistoryInfo. Se você pretende passar os objetos novamente para Add-History, não use o parâmetro NoTypeInformation de Export-CSV e não exclua as informações de tipo, títulos de colunas ou quaisquer campos no arquivo.

Para editar o histórico da sessão, exporte a sessão para um arquivo CSV ou XML, edite o arquivo, importe-o e use Add-History para anexá-lo ao histórico da sessão atual.

Exemplo 1

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

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

Descrição
-----------
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 primeiro comando obtém os 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 utiliza o cmdlet Import-Csv para importar os objetos no arquivo History.csv. O operador de pipeline passa os objetos para o cmdlet Add-History, o qual adiciona os objetos que representam os comandos no arquivo History.csv ao histórico da sessão atual.





Exemplo 2

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

Descrição
-----------
Esse comando importa comandos do arquivo History.xml, adiciona-os ao histórico da sessão atual e, em seguida, executa os comandos no histórico combinado. 

O primeiro comando utiliza o comando 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 parâmetro Add-History, o qual adiciona os comandos ao histórico da sessão atual. O parâmetro PassThru passa os objetos que representam os comandos adicionados pelo pipeline. 

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, que é colocado entre chaves ({}) porque ForEach-Object requer um bloco de script mesmo quando há só um comando a ser aplicado.





Exemplo 3

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

Descrição
-----------
Esse comando adiciona os primeiros cinco comandos do histórico ao fim da lista de históricos. Ele usa o cmdlet Get-History para obter os cinco comandos que terminam no comando 5. O operador de pipeline (|) passa os comandos para o cmdlet Add-History, o qual os anexa ao histórico atual. O comando Add-History não inclui nenhum parâmetro, mas o Windows PowerShell associa os objetos passados pelo pipeline ao parâmetro InputObject.





Exemplo 4

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

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

Descrição
-----------
Esses comandos adicionam os comandos do arquivo History.csv ao histórico da sessão atual. O primeiro comando utiliza o cmdlet Import-Csv para importar os comandos no arquivo History.csv e para armazenar seu conteúdo na variável $a. O segundo comando utiliza o cmdlet Add-History para adicionar os comandos de History.csv ao histórico da sessão atual. Ele utiliza 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, Add-History não gera nenhuma saída a ser exibida.





Exemplo 5

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

Descrição
-----------
Esse comando adiciona os comandos do arquivo History01.xml ao histórico da sessão atual. Ele utiliza o parâmetro InputObject para passar os resultados do comando entre parênteses para Add-History. O comando entre parênteses, que é executado primeiro, importa o arquivo History01.xml para o Windows PowerShell. Em seguida, Add-History adiciona os comandos do arquivo ao histórico da sessão.





Consulte também

Conceitos

about_History
Get-History
Invoke-History
Clear-History