Exemplos usando shell script: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
Linha 39: | Linha 39: | ||
#!/bin/bash | #!/bin/bash | ||
data=$(date +%s) | data=$(date +%s) | ||
$DIR=/var/www/html | $DIR=/var/www/html | ||
cd $DIR | cd $DIR | ||
DIR_ORIG="/var/www/html/mediawiki/" | DIR_ORIG="/var/www/html/mediawiki/" | ||
DIR_DEST="/home/marco/Backup" | DIR_DEST="/home/marco/Backup" | ||
BKP_NAME="backupwiki-${data}.tar.gz" | BKP_NAME="backupwiki-${data}.tar.gz" | ||
tar -zcvf ${BKP_NAME} ${DIR_ORIG} | tar -zcvf ${BKP_NAME} ${DIR_ORIG} | ||
cp ${BKP_NAME} ${DIR_DEST} | cp ${BKP_NAME} ${DIR_DEST} | ||
exit | exit |
Edição das 00h45min de 6 de setembro de 2016
O que é Shell Script?
É um arquivo executável, que se transforma em uma ferramenta de automação interpretado pelo shell de comandos das derivações de sistemas operacionais Linux/Unix. É uma arquivo com comandos e intruções que facilita muito as tarefas dos profissionais de TI, pois proporciona ao usuário executar ou automatizar várias tarefas para serem executadas pelo sistema. Resumindo, acaba sendo uma linguagem de programação de alto nível que é interpretada pela shell.
Iniciando a linguagem de programação Shell Script
No terminal do linux, devemos escolher um editor para criar o shell script. Como exemplo, usando o editor nano, digitamos:
nano.nomedoscript.sh
Linha inicial do script
#!/bin/bash
Esta linha, após ser digitada em um editor, invoca o bash (ou /sh no caso do shell), que interpreta e executa as instruções contidas no script.
SHELL SCRIPT sem variável
shell script pasta mediawiki (sem variável)
A pasta mediawiki possui toda a base de dados gerada. A seguir segue o exemplo de shell script para acessar a pasta, compactar ela e fazer a cópia para a pasta Backup. O nome "backupwiki.tar.gz" foi atribuído por escolha pessoal.
#!/bin/bash cd /var/www/html tar -zcvf backupwiki.tar.gz mediawiki/ cp backupwiki.tar.gz /home/usuario/Backup
shell script base de dados my_wiki do banco de dados MySQL (sem variável)
No exemplo a seguir, foi escolhida uma base de dados do MySQL, para ser o seu respectivo backup, compactação e cópia para a pasta Backup.
#!/bin/bash mysqldump -u root -p my_wiki > my_wiki.sql cd /home/usuario tar -zcvf bkpmywiki.tar.gz my_wiki.sql cp bkpmywiki.tar.gz /home/usuario/Backup
SHELL SCRIPT com variável
Devido a programação trabalhar com muitos valores, eles acabam variando muito em determinadas situações. Em nosso exemplo, utilizamos da variável para ser alterada quando for necessário, sem que se desvie do objetivo final do script criado.
Seguindo a mesma descrição dos scripts criando sem variável, segue o script com variável da pasta "mediawiki". Este script vai gerar um arquivo compactado, que será nomeado com um número, que representa a hora, dia e mês em que foi criado.
#!/bin/bash
data=$(date +%s)
$DIR=/var/www/html
cd $DIR
DIR_ORIG="/var/www/html/mediawiki/" DIR_DEST="/home/marco/Backup" BKP_NAME="backupwiki-${data}.tar.gz"
tar -zcvf ${BKP_NAME} ${DIR_ORIG}
cp ${BKP_NAME} ${DIR_DEST}
exit