SlideShare a Scribd company logo
1 of 22
OpenLabsby #OpenDev
AUTOMATIZANDO TAREFAS COM
BASH SCRIPT
Rennan Cockles
OpenLabsby #OpenDev
O QUE É BASH
Uma implementação do shell
OpenLabsby #OpenDev
06/12/2016 3
BOURN AGAIN SHELL
Sh (Bourne Shell) melhorado
Comandos interativos / programação
Programação tipo LEGO
Comando3 = Comando1 + Comando2
HELP
$ whatis command
OpenLabsby #OpenDev
06/12/2016 4
$ command --help
$ man command
$ apropos keyword
PROGRAMANDO EM BASH
OpenLabsby #OpenDev
shebang
#! /bin/sh
#! /bin/bash
OpenLabsby #OpenDev
06/12/2016 6
function
function hello {
echo oi $1;
}
$ hello OpenLabs
oi OpenLabs
OpenLabsby #OpenDev
06/12/2016 7
if..elif..else
if test EXPRESSION; then
echo if;
elif [ EXPRESSION ]; then
echo elif;
else
echo else;
fi
OpenLabsby #OpenDev
06/12/2016 8
for
for ((i=1; i<=10; i++)); do
echo $i;
done
for i in `seq 1 10`; do
echo $i;
done
OpenLabsby #OpenDev
06/12/2016 9
while
COUNT=0;
while [ $COUNT -lt 5 ]; do
echo count = $COUNT;
let COUNT=COUNT+1
done
OpenLabsby #OpenDev
06/12/2016 10
while
COUNT=0;
while read line; do
let COUNT++;
echo line $COUNT - $line;
done < file
OpenLabsby #OpenDev
06/12/2016 11
until
COUNT=0;
until [ $COUNT = 5 ]; do
echo count = $COUNT;
let COUNT=COUNT+1
done
OpenLabsby #OpenDev
06/12/2016 12
case
COUNT=2;
case $COUNT in
1) echo um;;
2) echo dois;;
3) echo tres;;
*) echo outro;;
esac
OpenLabsby #OpenDev
06/12/2016 13
Mãos à obra
OpenLabsby #OpenDev
INPUT
Name,Status
"Claudia Schuenck",Comparecerão
"Thaís Rochah",Comparecerão
"Felipe Martins",Comparecerão
"Maria Clara Ornelas",Comparecerão
"Nicolle Guerreiro Chaboudet",Comparecerão
"Ana Carolina Organista Cörner",Comparecerão
"Diogo Antunes",Comparecerão
"Lucas Tardin",Comparecerão
"Nélio Viana",Comparecerão
. . .
OpenLabsby #OpenDev
OUTPUT
1 Adriana Santos
2 Adriana Silva
3 Adriano Brito
4 Adriene Sanches
5 Alana Melo
6 Alan Da Cruz Azevedo
7 Alessandro Martins Alves Debeu
8 Alexandre Mattos Faria
9 Alexsandro Bussinger
10 Alex Schuindt
. . .
SCRIPT
#!/bin/bash
tail -n +2 input | cut -d',' -f1 | tr -d """ | sort | nl
Manipulando arquivo de texto
INPUT
Files/
ARQUIVO de TESTE.txt
file 1
FiLe 2
Mais um arquivo - test.csv
OpenLabsby #OpenDev
OUTPUT
Files/
arquivo_de_teste.txt
file_1
file_2
mais_um_arquivo_-_test.csv
SCRIPT
#!/bin/bash
for f in *; do
[ -f "$f" ] && mv "$f" "$(echo $f | tr '[:upper:] ' '[:lower:]_')";
done 2> /dev/null
Renomeando arquivos
INPUT
https://www.packtpub.com
Todo dia um ebook gratuito é liberado no
site
OpenLabsby #OpenDev
OUTPUT
Título do ebook gratuito do dia
SCRIPT
#! /bin/bash
curl -s https://www.packtpub.com/packt/offers/free-learning | grep dotd-title -A 2 | tr
"n" "; " | tr -d "t" | cut -d ";" -f3 | cut -d '<' -f1
Free ebook
INPUT
http://www.filmesmonster.com
Site para download de filmes em torrent
OpenLabsby #OpenDev
OUTPUT
Lista dos filmes disponíveis para download
SCRIPT
#! /bin/bash
filmes="$(curl -s www.filmesmonster.com | hxnormalize -x | hxselect -i 'h2.entry-title')"
echo $filmes | lynx -stdin -dump | grep '['
Filmes torrent
INPUT
http://www.filmesmonster.com
Site para download de filmes em torrent
OpenLabsby #OpenDev
OUTPUT
Lista dos filmes disponíveis para download
SCRIPT
#! /bin/bash
filmes="$(curl -s www.filmesmonster.com | hxnormalize -x | hxselect -i 'h2.entry-title')"
echo $filmes | lynx -stdin -dump | grep '['
Backup simples
E AGORA?
Pense em suas tarefas cotidianas
Encontre algo para automatizar
Elabore
Tente, experimente
OpenLabsby #OpenDev
06/12/2016 20
Contatos
Email:
rcdev @ hotmail . com . br
Telegram:
@RCockles
OpenLabsby #OpenDev
06/12/2016 21
OpenLabsby #OpenDev
Obrigado!

More Related Content

What's hot (20)

Comandos Shell
Comandos ShellComandos Shell
Comandos Shell
 
Ficha de trabalho so 6 m4 linux comandos
Ficha de trabalho so 6 m4   linux comandosFicha de trabalho so 6 m4   linux comandos
Ficha de trabalho so 6 m4 linux comandos
 
Shell Scipt - Comandos
Shell Scipt - ComandosShell Scipt - Comandos
Shell Scipt - Comandos
 
Cap1 exercicios comandos linux
Cap1 exercicios comandos linuxCap1 exercicios comandos linux
Cap1 exercicios comandos linux
 
Linux shell
Linux shellLinux shell
Linux shell
 
Rodando PHP em um container Java
Rodando PHP em um container JavaRodando PHP em um container Java
Rodando PHP em um container Java
 
Git - Visão Geral
Git - Visão GeralGit - Visão Geral
Git - Visão Geral
 
Tr.01.comandos part1
Tr.01.comandos part1Tr.01.comandos part1
Tr.01.comandos part1
 
Ciência de Dados na Linha de Comando
Ciência de Dados na Linha de ComandoCiência de Dados na Linha de Comando
Ciência de Dados na Linha de Comando
 
Ficha de trabalho [6]
Ficha de trabalho [6]Ficha de trabalho [6]
Ficha de trabalho [6]
 
Personalizando o ambiente do usuário
Personalizando o ambiente do usuárioPersonalizando o ambiente do usuário
Personalizando o ambiente do usuário
 
Editor de texto VI
Editor de texto VIEditor de texto VI
Editor de texto VI
 
Version all the things - Workshop
Version all the things - WorkshopVersion all the things - Workshop
Version all the things - Workshop
 
Aula5
Aula5Aula5
Aula5
 
Introdução ao bash
Introdução ao bashIntrodução ao bash
Introdução ao bash
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
PHP e PostgreSQL: Um é pouco, dois é bom, três é demais
PHP e PostgreSQL: Um é pouco, dois é bom, três é demaisPHP e PostgreSQL: Um é pouco, dois é bom, três é demais
PHP e PostgreSQL: Um é pouco, dois é bom, três é demais
 
Como instalar o IRPF no Linux
Como instalar o IRPF no LinuxComo instalar o IRPF no Linux
Como instalar o IRPF no Linux
 
Comandos basicos linux
Comandos basicos linuxComandos basicos linux
Comandos basicos linux
 

Similar to Automatizando tarefas com Bash Script

Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)Hugo Maia Vieira
 
Oficina de shell script
Oficina de shell scriptOficina de shell script
Oficina de shell scriptbrunobione
 
Curso de ShellScript - Lm05 shellscript5
Curso de ShellScript - Lm05 shellscript5Curso de ShellScript - Lm05 shellscript5
Curso de ShellScript - Lm05 shellscript5Pessoal
 
Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014Michael Castillo Granados
 
Oficina shell
Oficina shellOficina shell
Oficina shellapsegundo
 
Bash, o poder da linha de comando! - Tchelinux.org 2017
Bash, o poder da linha de comando! - Tchelinux.org 2017Bash, o poder da linha de comando! - Tchelinux.org 2017
Bash, o poder da linha de comando! - Tchelinux.org 2017Sandro Custodio
 
Sapo sessions linux power tools
Sapo sessions linux power toolsSapo sessions linux power tools
Sapo sessions linux power toolsArmando Reis
 
Curso PHP UNIFACS 2014.1 – 2ª aula
Curso PHP UNIFACS 2014.1 – 2ª aulaCurso PHP UNIFACS 2014.1 – 2ª aula
Curso PHP UNIFACS 2014.1 – 2ª aulaJonata Weber
 
Curso de ShellScript - Lm06 shellscript6
Curso de ShellScript - Lm06 shellscript6Curso de ShellScript - Lm06 shellscript6
Curso de ShellScript - Lm06 shellscript6Pessoal
 
Soa cap2 exercicios resolvidos shell
Soa cap2 exercicios resolvidos shellSoa cap2 exercicios resolvidos shell
Soa cap2 exercicios resolvidos shellportal_Do_estudante
 
PHPSP TestFest 2010
PHPSP TestFest 2010PHPSP TestFest 2010
PHPSP TestFest 2010Rafael Dohms
 
Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2Leo Amorim
 
Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2Leo Amorim
 
Introdução PHP + Kohana 3
Introdução PHP + Kohana 3Introdução PHP + Kohana 3
Introdução PHP + Kohana 3Adir Kuhn
 

Similar to Automatizando tarefas com Bash Script (20)

Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)Introdução ao Shell Script (versão estendida)
Introdução ao Shell Script (versão estendida)
 
Oficina de shell script
Oficina de shell scriptOficina de shell script
Oficina de shell script
 
Shell script
Shell scriptShell script
Shell script
 
PHP GERAL
PHP GERALPHP GERAL
PHP GERAL
 
Curso de ShellScript - Lm05 shellscript5
Curso de ShellScript - Lm05 shellscript5Curso de ShellScript - Lm05 shellscript5
Curso de ShellScript - Lm05 shellscript5
 
Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014Código legado - PHP Conference Brasil - 2014
Código legado - PHP Conference Brasil - 2014
 
Oficina shell
Oficina shellOficina shell
Oficina shell
 
Bash, o poder da linha de comando! - Tchelinux.org 2017
Bash, o poder da linha de comando! - Tchelinux.org 2017Bash, o poder da linha de comando! - Tchelinux.org 2017
Bash, o poder da linha de comando! - Tchelinux.org 2017
 
Curso shell
Curso shellCurso shell
Curso shell
 
Sapo sessions linux power tools
Sapo sessions linux power toolsSapo sessions linux power tools
Sapo sessions linux power tools
 
Curso PHP UNIFACS 2014.1 – 2ª aula
Curso PHP UNIFACS 2014.1 – 2ª aulaCurso PHP UNIFACS 2014.1 – 2ª aula
Curso PHP UNIFACS 2014.1 – 2ª aula
 
Curso de ShellScript - Lm06 shellscript6
Curso de ShellScript - Lm06 shellscript6Curso de ShellScript - Lm06 shellscript6
Curso de ShellScript - Lm06 shellscript6
 
Soa cap2 exercicios resolvidos shell
Soa cap2 exercicios resolvidos shellSoa cap2 exercicios resolvidos shell
Soa cap2 exercicios resolvidos shell
 
PHPSP TestFest 2010
PHPSP TestFest 2010PHPSP TestFest 2010
PHPSP TestFest 2010
 
Palestra Ruby
Palestra RubyPalestra Ruby
Palestra Ruby
 
Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2
 
Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2Aula - Comandos Linux - Parte 2
Aula - Comandos Linux - Parte 2
 
Shell script
Shell scriptShell script
Shell script
 
Lpi+102
Lpi+102Lpi+102
Lpi+102
 
Introdução PHP + Kohana 3
Introdução PHP + Kohana 3Introdução PHP + Kohana 3
Introdução PHP + Kohana 3
 

Automatizando tarefas com Bash Script

Editor's Notes

  1. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  2. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  3. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  4. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  5. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  6. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  7. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  8. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  9. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  10. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes
  11. Um shell é basicamente um programa que interpreta o que o usuário digita (comandos) e envia para o sistema operacional scripts Shell criam novas aplicações compondo aplicações existentes