Get-Command
O Get-Command é um dos cmdlets mais úteis em todo o PowerShell, pois ajudará você a se familiarizar com o PowerShell, permitindo que você pesquise por determinados cmdlets. Usar o Get-Command por si só não é muito útil, já que ele vai cuspir todos os comandos que o PowerShell possui.
Get-Command –Name *IP*
Get-Command –Module NetTCPIP –Name *IP*
Obter ajuda
Depois de encontrar o cmdlet que você está procurando usando Get-Command, você desejará conhecer a sintaxe e como usar esse cmdlet específico. É aqui que entra o Get-Help, se você já usou a linha de comando no Windows, provavelmente fez algo assim:
ipconfig /?
Bem, isso não funciona no PowerShell, isso ocorre porque no PowerShell um espaço é usado para separar um comando de seus parâmetros. Então, em vez disso, usamos Get-Help e passamos um nome de cmdlets para Get-Help como um parâmetro.
Get-Help Get-Process
Get-Member
Get-Member nos permite obter informações sobre os objetos que os cmdlets retornam. O problema com o get-member é que ele depende do recurso de pipeline do PowerShell. Para demonstrar isso, poderemos usar o cmdlet Get-Process.
Como você pode ver, a saída do PowerShell mostra algumas das propriedades, que você pode ver no topo de cada coluna. O primeiro problema é que, enquanto essas são as propriedades que você pode estar procurando a maior parte do tempo, ainda há mais delas. O segundo problema é que ele não mostra nenhum método que possamos chamar no objeto. Para ver os métodos e propriedades, podemos canalizar nossa saída para Get-Member, da seguinte forma:
Get-Process | Get-Member
Start-Process notepad.exe $NotepadProc = Get-Process -Name notepad $NotepadProc.WaitForExit() Start-Process calc.exe
Esse script lançará o bloco de notas e atribuirá a saída “Get-Process –Name notepad” à variável $ NotepadProc; em seguida, chamaremos o método WaitForExit em $ NotepadProc, o que fará com que o script pause até você fechar o bloco de notas, depois de ter fechado o bloco de notas então a calculadora será lançada.
$ _ (Objeto Pipeline Atual)
Embora não seja exatamente um cmdlet, é uma das variáveis especiais mais usadas no PowerShell. O nome oficial de $ _ é “o objeto de pipeline atual”. Ele é usado em blocos de script, filtros, a cláusula de processo de funções, where-object, foreach-object e switches. No entanto, é mais fácil explicar com um exemplo, o que nos leva ao nosso próximo e final cmdlet, Where-Object.
Onde-Objeto
Onde-Object faz exatamente o que parece, ele seleciona um objeto com base em se ele atende a um determinado critério. Isso reunirá $ _ e as propriedades que podemos ver usando Get-Member. Para demonstrar isso, enviaremos a saída de Get-Process para o cmdlet Where-Object.
Get-Process | Where-Object {$_.Name –eq “iexplore”}