Curso Básico de Programação em Bash

Seu apoio é muito importante para a criação e a manutenção dos cursos gratuitos do canal debxp:


Conteúdo

Aula 1 – Conceitos Básicos

  • O que é o ‘shell’
  • Terminais e consoles
  • O ‘prompt’ de comandos
  • A aparência do ‘prompt’
  • Shell interativo e não-interativo
  • Tipos de shell
  • Os comandos ‘builtin’ do Bash
  • Como saber que tipo de shell você está utitlizando

Aula 2 – Antes do Primeiro Script

  • Entendendo a utilidade dos scripts
  • Sobre a execução de scripts
  • Cuidados e boas práticas

Aula 3 – Nosso Primeiro Script

  • Etapas de criação de um script
  • Etapa 1: Criar o arquivo do nosso script
  • Etapa 2: Escrever o conteúdo do script no arquivo
  • Etapa 3: Tornar o arquivo executável
  • Nosso primeiro script!
  • Um script para criar scripts

Aula 4 – Variáveis

  • Conceito
  • Nomeando variáveis
  • Tipos de variáveis
  • Variáveis vetoriais
  • Variáveis inalteráveis (read-only)
  • Destruindo variáveis
  • Atribuindo saídas de comandos a variáveis
  • Acessando os valores das variáveis

Aula 5 – Variáveis Especiais

  • Caracteres com significado especial
  • Obtendo o status de saída do último comando
  • Passando argumentos para o scripts
  • Contando o número de argumentos
  • Um pequeno resumo

Aula 6 – Vetores

  • Um nome, muitos valores
  • Criando vetores indexados
  • Acessando os valores da array
  • Lendo todos os valores de uma array
  • Listando os valores da array por faixas de índices
  • Descobrindo o número de elementos de uma array

Aula 7 – Concatenação de Strings

  • Expansão de parâmetros
  • Inserindo strings em strings
  • O operador de concatenação

Aula 8 – Operações Aritméticas

  • As operações básicas
  • Operadores aritméticos
  • Operadores de atribuição
  • Precedência
  • O problema do ‘declare -i’
  • O comando interno ‘let’
  • O comando composto ‘(( expressão ))’
  • A expansão aritmética ‘$(( expressão ))’
  • E os números não inteiros?

Aula 9 – Expansões do Shell

  • O que são expansões
  • Expansão de caminhos
  • Expansão de nomes de arquivos
  • Expansão de chaves
  • Quebra de palavras
  • Substituição de comandos
  • Remoção de aspas

Aula 10 – Expansões de Parâmetros

  • Trocando o nome pela pessoa
  • Indireções
  • Substrings
  • Comprimento de strings e número de elementos de arrays
  • Testando variáveis
  • Maiúsculas e minúsculas
  • Aparando strings
  • Busca e substituição de padrões

Aula 11 – O loop ‘for’

  • Comandos compostos
  • Sintaxe
  • Percorrendo as palavras em uma string
  • Percorrendo elementos de uma array
  • Percorrendo nomes de arquivos
  • Percorrendo faixas numéricas e alfabéticas
  • Controlando a execução do loop ‘for’

Aula 12 – Loops ‘while’ e ‘until’

  • Estruturas de repetição condicional
  • Sintaxe
  • O loop ‘while’
  • O loop ‘until’
  • Loops infinitos
  • Interrompendo loops infinitos

Aula 13 – O menu ‘select’

  • Um menu simplificado
  • Sintaxe
  • O prompt ‘PS3’
  • Menus com ‘while’ e ‘until’

Aula 14 – Estruturas de decisão ‘if’ e ‘case’

  • A estrutura ‘if’, ‘elif’, ‘then’, ‘else’
  • Um engano muito comum
  • Operadores de encadeamento condicional
  • A estrutura ‘case’

Aula 15 – Funções

  • Conceito
  • Sintaxe geral
  • Nossa primeira função
  • Passando "argumentos"
  • Retornando valores
  • Escopo de variáveis
  • A variável ‘FUNCNAME’
  • Diferenciando funções de comandos com o mesmo nome

PDF Completo
Total de 130 páginas em A4


Playlist completa no Youtube
Duração total: 10 horas (média de 40 minutos por aula)


Vídeos das aulas complementares

Duração total: 100 minutos


Estudos de casos e dicas

Com o tempo, mais vídeos serão acrescentados a esta lista.