Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Neste Tutorial vamos aprender como usar o cmdlet Get-History do Windows PowerShell para acelerar a execução de comandos repetitivos.
Solução
Quando utilizamos o Windows PowerShell podemos executar o mesmo comando repetidas vezes, isso nos ajuda, pois facilita lembrar dos comandos que foram executados e que podem ser reutilizados no dia a dia.
O cmdlet Get-History contém o histórico da sessão, ou seja, a lista de comandos inseridos durante a sessão atual.
O número de comandos armazenados é baseada em uma variável chamada **MaximumHistoryCount **e o valor default é 4096, quando atingir 4095 o comando mais antigo será substituído, esse valor poderá ser alterado.
http://www.andersonpatricio.org/wp-content/uploads/2016/04/image_thumb.png
O Windows PowerShell mantém automaticamente um histórico de cada sessão. Podemos salvar o histórico da sessão em formato XML ou CSV. Por padrão, os arquivos de histórico são salvos no diretório onde está sendo executado os comandos, neste caso c:\users\administrador, mas o arquivo poderá ser salvo em qualquer local.
Temos quatro cmdlets do Windows PowerShell que permitem trabalharmos com o Get-History.http://www.andersonpatricio.org/wp-content/uploads/2016/04/PS01.png
Acelerando a execução dos comandos
Para consultar a lista de comandos ao invés de digitarmos Get-History digite apenas h e será exibida a lista de todos os comandos que foram digitados.
http://www.purainfo.com.br/wp-content/uploads/ps05_thumb.png
Para executar um dos comandos que foram consultados anteriormente ao invés de digitarmos Invoke-History 5 digite apenas r e o id correspondente que neste caso é o número 5http://www.andersonpatricio.org/wp-content/uploads/2016/04/ps03.png
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.
E pra finalizar vamos exportar os comandos executados para um arquivo CSV, isso é muito útil quando realizamos o troubleshooting de um servidor e executamos vários comandos para realizar uma análise mais detalhada mas no final do atendimento não lembramos a ordem de execução e quais comandos foram utilizados, neste caso podemos exportar para um arquivo e reutilizar caso seja necessário ou até para fins de auditoria.
Get-History | Export-CSV C:\Temp\CommandHistory.CSVhttp://www.andersonpatricio.org/wp-content/uploads/2016/04/ps04.pnghttp://www.andersonpatricio.org/wp-content/uploads/2016/04/image_thumb5.png
Conclusão
Neste artigo, mostramos como podemos tirar proveito do cmdlet Get-History executando o mesmo comando várias vezes, acelerar a execução das tarefas e criar rotinas automatizadas para executar os comandos.