Successfully reported this slideshow.
Your SlideShare is downloading. ×

Powershell “à minha maneira”

Ad

NOME DA APRESENTAÇÃO
Nome (Nick no Fórum)
25 DE MAIO @MICROSOFT
Powershell "à minha maneira"
Bruno Lopes (brunomlopes)

Ad

Quem sou? O meu valor!
• Bruno Lopes ( brunomlopes )
• Co-founder de uma startup
• Tirei o curso há 7 anos
• 80% do que fi...

Ad

Agenda
Cmdlets Pipeline Módulos

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Loading in …3
×

Check these out next

1 of 22 Ad
1 of 22 Ad

Powershell “à minha maneira”

Por Bruno Lopes

Nesta apresentação vamos olhar para powershell na perspectiva de expandir as capacidades do ambiente com funções e módulos nossos.

Vamos olhar para como construir um módulo com cmdlets que funcionam da mesma forma que as nativas de powershell, e que podem ser usadas na consola de powershell, tirando partido de script blocks e pipelining.

Demos: https://github.com/brunomlopes/pap-2013-05-25-powershell

Por Bruno Lopes

Nesta apresentação vamos olhar para powershell na perspectiva de expandir as capacidades do ambiente com funções e módulos nossos.

Vamos olhar para como construir um módulo com cmdlets que funcionam da mesma forma que as nativas de powershell, e que podem ser usadas na consola de powershell, tirando partido de script blocks e pipelining.

Demos: https://github.com/brunomlopes/pap-2013-05-25-powershell

Advertisement
Advertisement

More Related Content

Advertisement

Powershell “à minha maneira”

  1. 1. NOME DA APRESENTAÇÃO Nome (Nick no Fórum) 25 DE MAIO @MICROSOFT Powershell "à minha maneira" Bruno Lopes (brunomlopes)
  2. 2. Quem sou? O meu valor! • Bruno Lopes ( brunomlopes ) • Co-founder de uma startup • Tirei o curso há 7 anos • 80% do que fiz e faço é web e .Net • Éramos uma empresa de custom development • Agora estamos agora a vender, desenvolver, comercializar e suportar um produto • Co-Organizador/Orador • Fã de Powershelle de python, e de c#, e de javascript, e de linux, e de .net…
  3. 3. Agenda Cmdlets Pipeline Módulos
  4. 4. Questões?
  5. 5. Agenda Cmdlets Pipeline Módulos
  6. 6. What, Why, How • Cmdlet: • Átomo de execução de Powershell • V1.0 – em C#/VB.Net • V2.0 – em Powershell • Abstrai comportamento/recurso • Auto-descritiva e inspecionável • Seguem “sempre” o mesmo padrão: • Verbo-Nome • A lista de verbos “recomendada” é obtida por um cmdlet • Get-Verb • Caso de exemplo: Start-IisExpress • Queremos iniciar um IIS Express a servir a aplicação de uma pasta num porto à escolha
  7. 7. Código Cmdlets
  8. 8. Questões?
  9. 9. Agenda Cmdlets Pipeline Módulos
  10. 10. Pipeline • Conceito familiar de outras shells • Em powershell são objectos e não texto que passa na pipeline • Funções “especiais” • Processo: • Begin • Process • End • Permite processar item a item da pipeline • Caso de exemplo : Push-AzureMessageTopic • Enviar um objecto para uma message queue de azure
  11. 11. Código Pipelines
  12. 12. Questões?
  13. 13. Agenda Cmdlets Pipeline Módulos
  14. 14. Módulos • Agrupam um conjunto de funcionalidades • Variáveis • Funções • Cmdlets • Podem • Ter documentação associada • Ser instalados globalmente • Exemplos • WebAdministration (IIS) • Posh-git • Pscx (powershell community extensions)
  15. 15. Código Módulos
  16. 16. Questões?
  17. 17. Estudos futuros • Profile • Extended Type Data • Module Manifests • Add-Type • Powershell Remoting • Interacção com .Net
  18. 18. Referências • Ajuda • Get-help • <Verb>-<Noun> -? • Blogs • Hey, Scripting Guy! • http://blogs.technet.com/b/heyscriptingguy/ • Módulos • PowerShell Community Extensions • http://pscx.codeplex.com/ • Posh-git • https://github.com/dahlbyk/posh-git
  19. 19. Questões? (ultima hipótese) (durante a apresentação, lá fora podem perguntar mais coisas)
  20. 20. Patrocinador Gold Patrocinadores Silver
  21. 21. Media Partners
  22. 22. Obrigado Bruno Lopes brunomlopes@gmail.com @brunomlopes

Editor's Notes

  • Também faço suporte de clientes, administração de sistemas, tiro cafés e até à pouco tempo era faxineiro.
  • Eu hoje venho vos falar de 3 temas de powershell que vos vão permitir extender e tirar melhor partido de powershell.Para isto eu vou assumir alguma familiaridade com powershell, que sabem o que é, como definir variáveis e funções, e os rudimentos de uso de comandos e pipelines.Para demo vou usar powershell v3, usando o integratedscriptingenvironmentNa primeira parte vamos falar de Cmdlets, como criar, documentar e definir parâmetros e comportamentosDepois vamos falar um bocado da pipeline de powershell, e como é que podem criar funções que tiram partido da pipelineFinalmente, tudo isto tem que ser organizado de uma forma, e essa forma é tipicamente em “módulos”
  • E sem mais demoras, vamos começar por cmdlets
  • V2.0 de powershell trás o conceito de funções avançadasget-helpabout_functions_advancedAuto-descritiva, quer dizer que não deve ser preciso procurar no manual qual o comportamento, basta fazer &lt;cmdlet&gt; -?Inspecionavel quer dizer que devemos poder, na linha de comandos, procurar informação sobre o cmdlet e os argumentosO “sempre” aqui é apenas uma guia. Podem criar cmdlets com nomes diferentes do que os indicados, mas o powershell vai vos avisar que não estão a seguir as indicações certas.Vamos criar uma cmdlet que inicie o iisexpress, que é instalado com qq versão de visual studio 2012, e com o sp1 de vs 2010 (se não me engano)
  • Vamos ao código(abrir o powershell)
  • V2.0 de powershell trás o conceito de funções avançadasget-helpabout_functions_advanced
  • Extendedtype data permite extender os tipos de dados que são manipulados em powerhsell

×