Sintaxe bash

Estruturas de sintaxe básicas do Bash Script

Comentários em Bash Script

Comentários são blocos de texto que não são interpretados pela linguagem de programação. Eles são utilizados para documentar o código, explicar o que está sendo feito, ou para desabilitar uma parte do código.

# Isto é um comentário de uma linha

<<COMENTARIO
Isto é um comentário
de múltiplas linhas
COMENTARIO

Declaração de variáveis em Bash Script

Em Bash Script, uma variável é declarada com um sinal de igual (=) sem espaços ao redor, e um array é declarado com parênteses e valores separados por espaços.

# Variável
var="http://www.rmbinformatica.com"

Declaração de arrays em Bash Script

# Array
meuArray=("gato" "cachorro" "rato" "sapo")

Ler input do usuário, atribuir a uma variável e depois imprimir na tela em Bash Script

# Ler um input do usuário e guardar na variável nome
read -p "Qual é o seu nome? " nome

# Imprimir a variável nome
echo "Olá, $nome!"

Estruturas de seleção em Bash Script

if em Bash Script

# Testar uma condição usando if
if [ CONDIÇÃO ]; then
  # Executar este bloco se a condição for verdadeira
fi

# Testar uma condição usando if e else
if [ CONDIÇÃO ]; then
  # Executar este bloco se a condição for verdadeira
else
  # Executar este bloco se a condição for falsa
fi

# Testar uma condição usando if, elif e else
if [ CONDIÇÃO1 ]; then
  # Executar este bloco se a condição1 for verdadeira
elif [ CONDIÇÃO2 ]; then
  # Executar este bloco se a condição2 for verdadeira e a condição1 for falsa
else
  # Executar este bloco se nenhuma das condições anteriores for verdadeira
fi

switch em Bash Script

# Testar o valor de uma variável usando case
case $VARIÁVEL in
  VALOR1)
    # Executar este bloco se a variável for igual a VALOR1
    ;;
  VALOR2)
    # Executar este bloco se a variável for igual a VALOR2
    ;;
  *)
    # Executar este bloco se a variável não for igual a nenhum dos valores anteriores
    # Este é o caso default
    ;;
esac

Estruturas de repetição em Bash Script

for em Bash Script

# Iterar sobre uma lista de valores usando for
for i in 1 2 3 4 5
do
  # Executar este bloco para cada valor da lista
done

# Iterar sobre uma lista de valores usando for e range
for i in {1..5}
do
  # Executar este bloco para cada valor da lista
done

# Iterar sobre uma lista de valores usando for e range com incremento
for i in {1..5..2}
do
  # Executar este bloco para cada valor da lista
done

# Iterar sobre uma lista de valores usando for e range com decremento
for i in {5..1..-2}
do
  # Executar este bloco para cada valor da lista
done

# Iterar sobre uma lista de valores usando for e range com incremento e variável
for ((i=1; i<=5; i++))
do
  # Executar este bloco para cada valor da lista
done

while em Bash Script

# Iterar enquanto uma condição for verdadeira usando while
while [ CONDIÇÃO ]
do
  # Executar este bloco enquanto a condição for verdadeira
done

do while em Bash Script

Em Bash, não há uma estrutura do while nativa, mas você pode simular um comportamento semelhante usando um laço while com um comando break. A sintaxe para usar um laço while com um break é a seguinte:

# Executar um bloco de comandos pelo menos uma vez e enquanto uma condição for verdadeira usando while e break
while true; do
  # Executar este bloco pelo menos uma vez
  # Verificar a condição e sair do laço se for falsa
  [ [ CONDIÇÃO ]] || break
done

foreach em Bash Script

# Iterar sobre um array
arr=(1 2 3 4)
for valor in "${arr[@]}"; do
  echo "O valor atual é $valor"
done

# Iterar sobre as linhas de um arquivo
while read linha; do
  echo "A linha atual é $linha"
done < arquivo.txt

Funções em Bash Script

Em bash, você pode declarar uma função com ou sem a palavra-chave function e usar o comando return para retornar um valor numérico entre 0 e 255, que representa o código de saída da função. Se você quiser retornar outro tipo de valor, você pode usar o comando echo e capturar a saída da função com o operador $(). Por exemplo:

# Declarar uma função com a palavra-chave function
function soma () {
  local a=$1 # O primeiro parâmetro é atribuído à variável local a
  local b=$2 # O segundo parâmetro é atribuído à variável local b
  echo $((a + b)) # A soma de a e b é impressa na saída padrão
}

# Declarar uma função sem a palavra-chave function
multiplica () {
  local a=$1 # O primeiro parâmetro é atribuído à variável local a
  local b=$2 # O segundo parâmetro é atribuído à variável local b
  return $((a * b)) # O produto de a e b é retornado como código de saída
}

# Chamar as funções e capturar seus valores de retorno
resultado_soma=$(soma 3 4) # A saída da função soma é atribuída à variável resultado_soma
echo "O resultado da soma é $resultado_soma" # Imprime "O resultado da soma é 7"

multiplica 3 4 # A função multiplica é chamada sem capturar seu valor de retorno
resultado_multiplica=$? # O código de saída da última função é atribuído à variável resultado_multiplica
echo "O resultado da multiplicação é $resultado_multiplica" # Imprime "O resultado da multiplicação é 12"

Mais detalhes e exemplos em Passing parameters to a Bash function - Stack Overflow e Return value in a Bash function - Stack Overflow.

Fazer requisições HTTP no Bash usando curl

# Requisição GET
curl https://example.com

# Requisição POST
curl -d "param1=value1&param2=value2" https://example.com
Renato Monteiro Batista
Renato Monteiro Batista
Engenheiro de Computação
https://renato.ovh
    
Renato Monteiro Batista

resultados encontrados ""

    Nenhum resultado encontrado ""