Neverland,Neverland,
27/04/1527/04/15
ShellShell
ScriptScript
Luz eLuz e
TrevasTrevas
Neverland,Neverland,
27/04/1527/04/15
About meAbout me
●
Técnico em TI/Redes – UFC
●
Pós graduando em Computação Forense
●...
Neverland,Neverland,
27/04/1527/04/15
KeynotesKeynotes
● Inicio!
● Meio... Trevas?
● Fim! Será? Luz...
Neverland,Neverland,
27/04/1527/04/15
InicioInicio
●
O que diacho é Linux?
●
Sistema Operacional? Piorô!
●
Causos do Linux...
Neverland,Neverland,
27/04/1527/04/15
Meio... Trevas?Meio... Trevas?
●
Shell Linux! Cadê as buniteza do
Ruindows? Trevas.....
Neverland,Neverland,
27/04/1527/04/15
Fim! Será? Luz...Fim! Será? Luz...
●
Olha as buniteza aparecendo...
Lâmpada incandes...
Neverland,Neverland,
27/04/1527/04/15
InicioInicio
Neverland,Neverland,
27/04/1527/04/15
O que diacho é Linux?O que diacho é Linux?
●
Linus + Unix
●
Sistema Operacional
●
Ke...
Neverland,Neverland,
27/04/1527/04/15
Sistema Operacional? PiorôSistema Operacional? Piorô
●
Hardware x Software
●
Gerênci...
Neverland,Neverland,
27/04/1527/04/15
Causos do LinuxCausos do Linux
●
E-mail de Linus Torvalds
●
FSF
●
Onde encontro Linu...
Neverland,Neverland,
27/04/1527/04/15
Liberdade, código fonte,Liberdade, código fonte,
open source... eita pau!open source...
Neverland,Neverland,
27/04/1527/04/15
Cabas arretados doCabas arretados do
Software Livre!Software Livre!
●
Linus Torvalds...
Neverland,Neverland,
27/04/1527/04/15
Meio...Meio...
Trevas?Trevas?
Neverland,Neverland,
27/04/1527/04/15
Shell Linux! Cadê asShell Linux! Cadê as
buniteza do Ruindows?buniteza do Ruindows?
...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Comandos Linux eComandos Linux e
Shells. Pusquê emShells. Pusquê em
ingrês?ingrês?
●...
Neverland,Neverland,
27/04/1527/04/15
●
grep = get regular expression
●
du = disk usage
●
find
●
cut
●
updatedb
●
locate
●...
Neverland,Neverland,
27/04/1527/04/15
MANMAN
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Scripts em Shell, esse troçoScripts em Shell, esse troço
é realmente necessário?é re...
Neverland,Neverland,
27/04/1527/04/15
Programação... AgoraProgramação... Agora
lascou!lascou!
●
Script x Compilação
●
Lógi...
Neverland,Neverland,
27/04/1527/04/15
Vamos começar aVamos começar a
brincadeirabrincadeira
●
Definição do shell que será ...
Neverland,Neverland,
27/04/1527/04/15
VariáveisVariáveis
●
Definição de chave e valor
●
Boas práticas para definição de
va...
Neverland,Neverland,
27/04/1527/04/15
Tomada de decisãoTomada de decisão
●
Estrutura condicional
●
Comando if
●
Comando if...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
CaseCase
●
Estrutura condicional de múltiplas
opções
●
Teste de resultados exatos
●
...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
LaçosLaços
CondicionaisCondicionais
●
Comando for
●
O laço for executa uma ação
repe...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
WhileWhile
●
O laço while executa uma ação
repetitivamente até que uma
condição seja...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
FunçõesFunções
●
Trechos de código que permitem
uma separação lógica dos scripts
●
M...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Fim! Será?Fim! Será?
Luz...Luz...
Neverland,Neverland,
27/04/1527/04/15
Olha as bunitezaOlha as buniteza
aparecendo...aparecendo...
LâmpadaLâmpada
incandesc...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Há outras opções deHá outras opções de
lâmpada(luz)?lâmpada(luz)?
●
Xdialog
●
Kdialo...
Neverland,Neverland,
27/04/1527/04/15
Yet AnotherYet Another
DialogDialog
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
ZenityZenity
Neverland,Neverland,
27/04/1527/04/15
Agora vamos juntar luz eAgora vamos juntar luz e
trevas!trevas!
●
Criando scripts co...
Neverland,Neverland,
27/04/1527/04/15
Lista de exercíciosLista de exercícios
●
Fazer um script que gere endereços IP's
sem...
Neverland,Neverland,
27/04/1527/04/15
ConclusõesConclusões
Neverland,Neverland,
27/04/1527/04/15
BibliografiaBibliografia
●
http://aurelio.net/
●
www.vivaolinux.com.br
●
Jargas, Aur...
Neverland,Neverland,
27/04/1527/04/15
Neverland,Neverland,
27/04/1527/04/15
ContatosContatos
●
Twitter: @osvaldofilho
●
www.facebook.com/osvaldofilho.redes
●
E-...
Neverland,Neverland,
27/04/1527/04/15
Obrigado!!!Obrigado!!!
Próximos SlideShares
Carregando em…5
×

Shell Script - Luz e trevas

575 visualizações

Publicada em

Apresentação criada para o Flisol 2015!

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
575
No SlideShare
0
A partir de incorporações
0
Número de incorporações
7
Ações
Compartilhamentos
0
Downloads
24
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Shell Script - Luz e trevas

  1. 1. Neverland,Neverland, 27/04/1527/04/15 ShellShell ScriptScript Luz eLuz e TrevasTrevas
  2. 2. Neverland,Neverland, 27/04/1527/04/15 About meAbout me ● Técnico em TI/Redes – UFC ● Pós graduando em Computação Forense ● Graduado em Redes de Computadores ● Técnico em Conectividade – IFCE ● Administrador no Hackerspace Fortaleza Infra ● Membro Fundador do iTIC Digital Livre
  3. 3. Neverland,Neverland, 27/04/1527/04/15 KeynotesKeynotes ● Inicio! ● Meio... Trevas? ● Fim! Será? Luz...
  4. 4. Neverland,Neverland, 27/04/1527/04/15 InicioInicio ● O que diacho é Linux? ● Sistema Operacional? Piorô! ● Causos do Linux. ● Liberdade, código fonte, open source... eita pau! ● Cabas arretados do Software Livre!
  5. 5. Neverland,Neverland, 27/04/1527/04/15 Meio... Trevas?Meio... Trevas? ● Shell Linux! Cadê as buniteza do Ruindows? Trevas... ● Comandos Linux e Shells. Pusquê em ingrês? ● Scripts em Shell, esse troço é realmente necessário? ● Programação... Agora lascou!
  6. 6. Neverland,Neverland, 27/04/1527/04/15 Fim! Será? Luz...Fim! Será? Luz... ● Olha as buniteza aparecendo... Lâmpada incandescente! ● Há outras opções de lâmpada(luz)? ● Agora vamos juntar luz e trevas!
  7. 7. Neverland,Neverland, 27/04/1527/04/15 InicioInicio
  8. 8. Neverland,Neverland, 27/04/1527/04/15 O que diacho é Linux?O que diacho é Linux? ● Linus + Unix ● Sistema Operacional ● Kernel ● Unix & Minix ● Software Livre
  9. 9. Neverland,Neverland, 27/04/1527/04/15 Sistema Operacional? PiorôSistema Operacional? Piorô ● Hardware x Software ● Gerência ● Controle de acesso à recursos ● Nível de sistema e nível de usuário
  10. 10. Neverland,Neverland, 27/04/1527/04/15 Causos do LinuxCausos do Linux ● E-mail de Linus Torvalds ● FSF ● Onde encontro Linux? ● Eventos Linux
  11. 11. Neverland,Neverland, 27/04/1527/04/15 Liberdade, código fonte,Liberdade, código fonte, open source... eita pau!open source... eita pau! ● Software Livre e as 4 liberdades ● Open Source ● Exemplos de softwares livres
  12. 12. Neverland,Neverland, 27/04/1527/04/15 Cabas arretados doCabas arretados do Software Livre!Software Livre! ● Linus Torvalds ● Richard Stallman ● John Maddog Hall
  13. 13. Neverland,Neverland, 27/04/1527/04/15 Meio...Meio... Trevas?Trevas?
  14. 14. Neverland,Neverland, 27/04/1527/04/15 Shell Linux! Cadê asShell Linux! Cadê as buniteza do Ruindows?buniteza do Ruindows? Trevas...Trevas... ● O que é o Shell? ● Tipos de Shell. ● Entrada padrão. ● Saída padrão. ● Erro padrão. ● Programas prontos. ● Variáveis de ambiente.
  15. 15. Neverland,Neverland, 27/04/1527/04/15
  16. 16. Neverland,Neverland, 27/04/1527/04/15 Comandos Linux eComandos Linux e Shells. Pusquê emShells. Pusquê em ingrês?ingrês? ● ls = list ● pwd = print work directory ● cd = change directory ● mkdir = make directory ● rmdir = remove directory ● cp = copy ● mv = move ● cat = concatenate ● wc = word count
  17. 17. Neverland,Neverland, 27/04/1527/04/15 ● grep = get regular expression ● du = disk usage ● find ● cut ● updatedb ● locate ● head ● tail ● date ● tr = translate ● ln = link ● df
  18. 18. Neverland,Neverland, 27/04/1527/04/15 MANMAN
  19. 19. Neverland,Neverland, 27/04/1527/04/15
  20. 20. Neverland,Neverland, 27/04/1527/04/15 Scripts em Shell, esse troçoScripts em Shell, esse troço é realmente necessário?é realmente necessário? ● Tarefas repetitivas ● Automatização de tarefas ● Instalação de programas ● Administração de servidores ● Não reinvente a roda!
  21. 21. Neverland,Neverland, 27/04/1527/04/15 Programação... AgoraProgramação... Agora lascou!lascou! ● Script x Compilação ● Lógica ● Semelhante às linguagens tradicionais ● Utilização dos comandos Linux
  22. 22. Neverland,Neverland, 27/04/1527/04/15 Vamos começar aVamos começar a brincadeirabrincadeira ● Definição do shell que será usado ● Criação de um arquivo ● Escolha do editor de texto ● Permissão de execução no script
  23. 23. Neverland,Neverland, 27/04/1527/04/15 VariáveisVariáveis ● Definição de chave e valor ● Boas práticas para definição de variáveis ● Armazenamento de valores ● Manipulação de variáveis(leitura)
  24. 24. Neverland,Neverland, 27/04/1527/04/15 Tomada de decisãoTomada de decisão ● Estrutura condicional ● Comando if ● Comando if/else ● Comando elif
  25. 25. Neverland,Neverland, 27/04/1527/04/15
  26. 26. Neverland,Neverland, 27/04/1527/04/15
  27. 27. Neverland,Neverland, 27/04/1527/04/15
  28. 28. Neverland,Neverland, 27/04/1527/04/15 CaseCase ● Estrutura condicional de múltiplas opções ● Teste de resultados exatos ● Opção default ● Não pode realizar tantos testes como o IF
  29. 29. Neverland,Neverland, 27/04/1527/04/15
  30. 30. Neverland,Neverland, 27/04/1527/04/15 LaçosLaços CondicionaisCondicionais ● Comando for ● O laço for executa uma ação repetitivamente até que uma condição seja atendida. ● No comando for sabemos exatamente quantas iterações irão ocorrer
  31. 31. Neverland,Neverland, 27/04/1527/04/15
  32. 32. Neverland,Neverland, 27/04/1527/04/15 WhileWhile ● O laço while executa uma ação repetitivamente até que uma condição seja atendida. ● No comando while não sabemos exatamente quantas iterações irão ocorrer
  33. 33. Neverland,Neverland, 27/04/1527/04/15
  34. 34. Neverland,Neverland, 27/04/1527/04/15 FunçõesFunções ● Trechos de código que permitem uma separação lógica dos scripts ● Melhora o entendimento do script ● Possibilita o reuso de código, uma boa prática de programação ● Facilita no processo de debbuging do script ● Se for usar mais de uma vez a mesma rotina, faça uma função!
  35. 35. Neverland,Neverland, 27/04/1527/04/15
  36. 36. Neverland,Neverland, 27/04/1527/04/15 Fim! Será?Fim! Será? Luz...Luz...
  37. 37. Neverland,Neverland, 27/04/1527/04/15 Olha as bunitezaOlha as buniteza aparecendo...aparecendo... LâmpadaLâmpada incandescente!incandescente!● O Dialog é um programa para console (modo texto) que desenha caixas de diálogo ("dialog boxes") na tela, similares as do modo gráfico, com botões, entradas para texto e menu ● Qualidade ainda deixa a desejar ● Alguns tipos de janela pré-definidos
  38. 38. Neverland,Neverland, 27/04/1527/04/15
  39. 39. Neverland,Neverland, 27/04/1527/04/15
  40. 40. Neverland,Neverland, 27/04/1527/04/15
  41. 41. Neverland,Neverland, 27/04/1527/04/15
  42. 42. Neverland,Neverland, 27/04/1527/04/15 Há outras opções deHá outras opções de lâmpada(luz)?lâmpada(luz)? ● Xdialog ● Kdialog ● BigBashView ● YAD ● Zenity
  43. 43. Neverland,Neverland, 27/04/1527/04/15 Yet AnotherYet Another DialogDialog
  44. 44. Neverland,Neverland, 27/04/1527/04/15
  45. 45. Neverland,Neverland, 27/04/1527/04/15
  46. 46. Neverland,Neverland, 27/04/1527/04/15 ZenityZenity
  47. 47. Neverland,Neverland, 27/04/1527/04/15 Agora vamos juntar luz eAgora vamos juntar luz e trevas!trevas! ● Criando scripts com janelas gráficas para melhorar a interação com os usuários ● Definir um fluxo de execução destes scripts para que os usuários sigam. Desta maneira evita-se interações erradas por partes dos usuários
  48. 48. Neverland,Neverland, 27/04/1527/04/15 Lista de exercíciosLista de exercícios ● Fazer um script que gere endereços IP's sem se preocupar com máscara de subrede e salvá-los em um arquivo. ● Criar um script que teste se uma determinada faixa de endereços IP estão disponíveis em uma rede e salvá-los em um arquivo. ● Criar um script gráfico que de acordo com a escolha do usuário desligue ou reinicie a máquina em um determinado tempo.
  49. 49. Neverland,Neverland, 27/04/1527/04/15 ConclusõesConclusões
  50. 50. Neverland,Neverland, 27/04/1527/04/15 BibliografiaBibliografia ● http://aurelio.net/ ● www.vivaolinux.com.br ● Jargas, Aurelio Marinho. Shell Script Profissional. Novatec Editora ● http://www.freeos.com/guides/lsst ● www.dicas-l.com.br ● http://apoie.org/JulioNeves/PapoI.ht m
  51. 51. Neverland,Neverland, 27/04/1527/04/15
  52. 52. Neverland,Neverland, 27/04/1527/04/15 ContatosContatos ● Twitter: @osvaldofilho ● www.facebook.com/osvaldofilho.redes ● E-mail: osvaldo.filho@sti.ufc.br
  53. 53. Neverland,Neverland, 27/04/1527/04/15 Obrigado!!!Obrigado!!!

×