Embora esta série não esteja estruturada em torno de um exame, o aprendizado do PowerShell é uma das coisas mais importantes que você pode fazer como administrador de rede, portanto, se há uma coisa que você quer aprender para ajudar na carreira de TI, é isso. Além disso, é muito divertido.
Introdução
O PowerShell é a ferramenta de automação mais poderosa que a Microsoft tem para oferecer, e é uma linguagem shell e de script.
Observe que esta série é baseada no PowerShell 3, fornecido com o Windows 8 e o Server 2012. Se você estiver executando o Windows 7, faça o download da atualização do PowerShell 3 antes de continuar.
Conheça o Console e o ISE
Há duas maneiras de interagir com o PowerShell, o Console e o Ambiente de Scripts Integrados - também conhecido como ISE. O ISE melhorou muito da versão hedionda que acompanha o PowerShell 2 e pode ser aberta pressionando a combinação de teclado Win + R para exibir uma caixa de execução, digitando powershell_ise e pressionando Enter.
REPL solicita que isso seja incrível para gratificação instantânea: você insere um comando e obtém resultados. Embora o console não ofereça o intellisense, ele oferece algo chamado conclusão de tabulação, que funciona praticamente da mesma maneira - basta começar a digitar um comando e pressionar a guia para percorrer possíveis correspondências.
Usando o sistema de ajuda
Nas versões anteriores do PowerShell, os arquivos de ajuda foram incluídos quando você instalou o Windows. Esta foi uma boa solução para a maior parte, mas nos deixou com um problema significativo. Quando a equipe de ajuda do PowerShell precisou parar de trabalhar nos arquivos de ajuda, os desenvolvedores do PowerShell ainda estavam ocupados codificando e fazendo alterações. Isso significa que, quando o PowerShell foi enviado, os arquivos de ajuda estavam incorretos porque não tinham as alterações mais recentes feitas no código. Para resolver esse problema, o PowerShell 3 não oferece arquivos de ajuda e inclui um sistema de ajuda atualizável. Isso significa que antes de fazer qualquer coisa, você desejará baixar os arquivos de ajuda mais recentes. Você pode fazer isso abrindo um Console do PowerShell e executando:
Update-Help
Get-Help –Name Update-Help
Para responder a segunda pergunta, há uma certa sintaxe que ajuda os arquivos a seguir e aqui está:
- Colchetes ao redor de um nome de parâmetro e seu tipo significa que é um parâmetro opcional e o comando funcionará bem sem ele.
- Colchetes ao redor do nome dos parâmetros significa que os parâmetros são um parâmetro posicional.
- A coisa à direita de um parâmetro nos colchetes indica o tipo de dados que o parâmetro está esperando.
Embora você deva aprender a ler a sintaxe do arquivo de ajuda, se você não tiver certeza sobre um parâmetro em particular, basta anexar - Cheio ao final do comando get help e vá até a seção de parâmetros, onde ele informará um pouco mais sobre cada um deles. parâmetro.
Get-Help –Name Update-Help –Full
Get-Help –Name *service*
Segurança
Esta não seria uma introdução adequada sem mencionar a segurança. A maior preocupação para a equipe do PowerShell é que o PowerShell se torne o mais recente e melhor ponto de ataque para as crianças de script. Eles implementaram algumas medidas de segurança para garantir que isso não aconteça, então vamos dar uma olhada nelas.
A forma mais básica de proteção vem do fato de que a extensão de arquivo PS1 (a extensão usada para denotar um script do PowerShell) não está registrada em um host do PowerShell, na verdade, está registrada no Bloco de Notas. Isso significa que, se você clicar duas vezes em um arquivo, ele será aberto com o bloco de notas em vez de ser executado.
Em segundo lugar, você não pode executar scripts a partir do shell apenas digitando o nome do script, você tem que especificar o caminho completo para o script. Então, se você quisesse executar um script em sua unidade C, teria que digitar:
C:
unme.ps1
Ou se você já estiver na raiz da unidade C, poderá usar o seguinte:
unme.ps1
Por fim, o PowerShell tem algo chamado Políticas de Execução, que impedem que você execute qualquer script antigo. Na verdade, por padrão, você não pode executar nenhum script e precisa alterar sua política de execução para poder executá-los. Existem 4 Políticas de Execução notáveis:
- Restrito: Esta é a configuração padrão no PowerShell. Essa configuração significa que nenhum script pode ser executado, independentemente de sua assinatura. A única coisa que pode ser executada no PowerShell com essa configuração é um comando individual.
- AllSigned: Essa configuração permite que scripts sejam executados no PowerShell. O script deve ter uma assinatura digital associada de um editor confiável. Haverá um aviso antes de você executar os scripts de editores confiáveis.
- RemoteSigned: Essa configuração permite que os scripts sejam executados, mas exige que o script e os arquivos de configuração baixados da Internet tenham uma assinatura digital associada de um editor confiável. Os scripts executados no computador local não precisam ser assinados. Não há prompts antes de executar o script.
- Irrestrito: Isso permite que scripts não assinados sejam executados, incluindo todos os scripts e arquivos de configuração baixados da Internet. Isso incluirá arquivos do Outlook e do Messenger. O risco aqui é executar scripts sem qualquer assinatura ou segurança. Nós recomeçamos que você nunca usa essa configuração.
Para ver qual é a sua Política de Execução atual, abra um Console do PowerShell e digite:
Get-ExecutionPolicy
Nota: Isso precisará ser feito a partir de um Console do PowerShell elevado.
Set-ExecutionPolicy RemoteSigned
Isenção de responsabilidade: o termo apropriado para um comando do PowerShell é um cmdlet e, a partir de agora, usaremos essa terminologia correta. Apenas pareceu mais apropriado chamá-los de comandos para esta introdução.
Se você tiver alguma dúvida, pode enviar um tweet para mim @taybgibb ou apenas deixar um comentário.