16Aug

Como usar seu histórico de comandos no Windows PowerShell

O Windows PowerShell possui um recurso de histórico de comandos interno que fornece informações detalhadas sobre os comandos que você executou. Como o prompt de comando, o PowerShell apenas lembra seu histórico de comandos para a sessão atual.

Como usar o buffer de linha de comando

O PowerShell possui, tecnicamente, dois tipos de histórico de comandos. Primeiro, existe o buffer de linha de comando, que é realmente parte do aplicativo de terminal gráfico PowerShell e não faz parte do aplicativo subjacente do Windows PowerShell. Ele fornece alguns recursos básicos:

  • Seta para cima : Lembre o comando anterior que você digitou. Pressione a tecla repetidamente para percorrer seu histórico de comandos.
  • Seta para baixo : Lembre o próximo comando que você digitou. Pressione a tecla repetidamente para percorrer seu histórico de comandos.
  • F8 : procure o seu histórico de comandos para um comando que corresponde ao texto na linha de comando atual. Então, se você quisesse procurar um comando que começou com "p", digite "p" na linha de comando e, em seguida, toque repetidamente F8 para percorrer os comandos do seu histórico que começam com "a".

Por padrão, o buffer lembra os últimos 50 comandos que você digitou. Para alterar isso, clique com o botão direito do mouse na barra de título da janela do prompt do PowerShell, selecione "Propriedades" e altere o valor de "Tamanho do buffer" no Histórico do comando.

Como visualizar o histórico do PowerShell

O próprio Windows PowerShell mantém um histórico dos comandos que você digitou na sessão atual do PowerShell. Você pode usar vários cmdlets incluídos para visualizar e trabalhar com seu histórico.

Para visualizar o histórico dos comandos que você digitou, execute o seguinte cmdlet:

Get-History

Você pode pesquisar seu histórico, encaminhando a saída resultante para o cmdlet Select-String e especificando o texto que deseja pesquisar. Substitua "Exemplo" no cmdlet abaixo com o texto que deseja pesquisar:

Get-History |Selecione-String -Pattern "Exemplo"

Para ver um histórico de comandos mais detalhado que exibe o status de execução de cada comando juntamente com seus horários de início e término, execute o seguinte comando:

Get-History |Format-List -Property *

Por padrão, o cmdlet Get-History mostra apenas as 32 entradas de histórico mais recentes. Se você deseja visualizar ou pesquisar um número maior de entradas do histórico, use a opção -Count para especificar quantas entradas de histórico o PowerShell deve mostrar, assim:

Get-History -Count 1000 Get-History -Count 1000 |Selecione-String -Pattern "Exemplo" Get-History -Count 1000 |Format-List -Property *

Como executar comandos do seu histórico

Para executar um comando do seu histórico, use o seguinte cmdlet, especificando o número de identificação do item de histórico conforme mostrado pelo cmdlet Get-History:

Invoke-History #

Para executar dois comandos do seu histórico de volta para trás, use Invoke-History duas vezes na mesma linha, separados por um ponto-e-vírgula. Por exemplo, para executar rapidamente o primeiro comando no seu histórico e, em seguida, o segundo, você executaria:

Invoke-History 1; Invoke-History 2

Como limpar o seu histórico do PowerShell

Para limpar o histórico de comandos que você digitou, execute o seguinte cmdlet:

Clear-History

Observe que o buffer de linha de comando é separado do histórico do PowerShell. Então, mesmo depois de executar Clear-History, você pode continuar pressionando as teclas de seta para cima e para baixo para percorrer os comandos que você digitou. No entanto, se você executar o Get-History, verá que o seu histórico do PowerShell está vazio.

PowerShell não lembra do seu histórico entre as sessões. Para apagar os dois históricos de comandos para a sessão atual, tudo o que você precisa fazer é fechar a janela do PowerShell.

Se você deseja limpar a janela do PowerShell depois de limpar o histórico, você pode fazê-lo executando o comando Limpar:

Limpar

Como salvar e importar o seu histórico de PowerShell

Se você quiser salvar o histórico de comandos do PowerShell para a atualsessão para que você possa se referir mais tarde, você pode fazê-lo.

Get-History |Export-Clixml -Path c: \ users \ name \ desktop \ commands.xml

Isso exporta o seu histórico de comandos como um arquivo XML detalhado completo com os valores "StartExecutionTime" e "EndExecutionTime" para cada comando que indica quando o comando foi executado equanto tempo demorou para completar.

Depois de exportar o seu histórico do PowerShell para um arquivo XML, você( ou qualquer outra pessoa para a qual você enviou o arquivo XML) pode importá-lo para outra sessão do PowerShell com o cmdlet Add-History:

Add-History -InputObject( Import-Clixml -Path C: \ users \ name \ desktop \ commands.xml)

Se você executar o cmdlet Get-History depois de importar esse arquivo XML, você verá que os comandos do XMLO arquivo foi importado para o histórico da sessão atual do PowerShell.