/scripts-bash

The practical way how to use scripting (bash), some examples of script from basic to advanced for infrastructure automation and daily routine working on LINUX servers. (constantly updating)

Primary LanguageShell

Mostrando o uso básico de Shell Script

  • Editor usado: VIM (versão 8.0.1453). Para saber mais detalhes do VIM, acessa esse link aqui: VIM
  • Vantagens do projeto: uso básico de comandos do shell, automação da infra, loops e condicionais em shell e debug do código.
  • Quando usar shell script? Você pode usar sem moderação, o bash é muito poderoso e oferece diversas funcionalidades e para facilitar o dia a dia você pode automatizar as tarefas usando scripts, como por exemplo, um backup automático de um diretório, a instalação de programas, instalação do LAMP, etc.
  • Descrição do projeto: abaixo irei mostrar algumas formas de uso de scripts, na qual obtive resultados reais.

Onde buscar conhecimentos de shell? Na Udemy e de graça! :-)

Condições importantes:

Argumentos especiais

Argumentos Descrição
$0 contém o nome do script que foi executado
$# contém o número de argumentos que foi passado
$* retorna todos os argumentos de uma vez só
$$ PID do processo atual (do próprio script)
$? retorna o valor do último comando executado
$_ último argumento do último comando executado
$@ Idem ao $*, acrescentando proteção
$1 exibe o primeiro parâmetro informado
$8 exibe o oitavo parêmtro informado
$! Exibe o PID do processo em background (job)

Comparações númericas

Comparação Descrição
n1 -eq n2 verifica se n1 é igual a n2
n1 -ge n2 verifica se n1 é maior ou igual a n2
n1 -gt n2 verifica se n1 é maior do n2
n1 -le n2 verifica se n1 é menor ou igual a n2
n1 -lt n2 verifica se n1 é menor do que n2
n1 -ne n2 verifica se n1 é diferente de n2

Status de saída

Código Significado
0 comando completado com sucesso
1 erro geral desconhecido
126 o comando não pode ser executado (permissões)
127 comando não encontrado
130 comando finalizado com Ctrl + C

Como fazer um cabeçalho objetivo? Veja a tela abaixo: :-)

  • É sempre importante criar um cabeçalho para seus scripts, pois outras pessoas poderão usar o seu código em projetos futuros, e dessa forma, com o cabeçalho criado, mostrando a forma de se usar o script, facilita o uso.

  • Confira na tela uma template de cabeçalho para seu script:

atualiza_sistema.sh

Loops e Condicionais

  1. Instrução if: verifica_nome.sh, vai_no_show.sh, jogo_secreto.sh, verifica_valor.sh, checa_numero.sh, teste_arquivo.sh

  2. Instrução case: operações.sh, atualiza_sistema.sh, instala_programas.sh, status_apache.sh

  3. Instrução for: Exemplo1, Exemplo2, verifica_diretorio.sh

  4. instrução while

Scripts diversos sobre o sistema Linux

A ideia aqui é apresentar um pouco de Shell Script como um meio agradável e simples de automatizar tarefas do dia a dia.

Scripts para automatização de rotinas

  • Script que faz a instalação do Zabbix Agent 4.0 em sistemas Debian: ZabbixAgent4.0

  • Script que faz a instalação do Zabbix Agent 4.0 no sistema CentOS: ZabbixAgent4.0

  • Instalação automática de programas: Programas Linux

  • Instalação do LAMP (Apache, MariaDB, PHP): Lamp_Linux

  • Verificação de informações do hardware/sistema: Hardware_Machine