DEV Community

Alex Reis
Alex Reis

Posted on

Introdução ao Shell Script

Shell Script é uma linguagem de script usada para automatizar tarefas no terminal do Linux/Unix.

Um Shell Script é um arquivo contendo comandos do terminal que podem ser executados como um programa. Ele usa interpretadores como bash, sh ou zsh.

Criando um shell script

  • Crie um arquivo arquivo .sh:
touch meu_script.sh
Enter fullscreen mode Exit fullscreen mode
  • Abra o arquivo no editor.
  • Adicione o código:
#!/bin/bash
echo "Olá mundo!"
Enter fullscreen mode Exit fullscreen mode

Shell scripts começam com um shebang, ele informa que o script deve ser interpretado pelo Bash. Você pode usar outra interpretador shell como #!/bin/sh.

echo é um comando usado para exibir uma mensagem no terminal.

  • Dê permissão de execução ao script:
chmod +x meu_script.sh
Enter fullscreen mode Exit fullscreen mode
  • Execute o script:
./meu_script.sh
Enter fullscreen mode Exit fullscreen mode

Variáveis e Entrada do Usuário

Podemos criar variáveis e interagir com o usuário:

#!/bin/bash
nome="Alex"
echo "Olá, $nome!"

echo "Qual é o seu nome?"
read usuario
echo "Bem-vindo, $usuario!"
Enter fullscreen mode Exit fullscreen mode

Variáveis são definidas com = sem espaços ao redor do =. Para usar uma variável colocamos $ antes de seu nome. Podemos fazer atribuições do tipo:

pais=Brasil
novo_pais=$pais
Enter fullscreen mode Exit fullscreen mode

O comando read permite capturar uma entrada do usuário.

Condicionais

#!/bin/bash
echo "Digite um número"
read numero

if [ $numero -gt 10 ]; then
    echo "O númeor é maior que 10."
else
    echo "O número é menor ou igual a 10."
fi
Enter fullscreen mode Exit fullscreen mode

No shell script usamos [] para testar condições. Operadores comuns são:

  • -eq -> igual a (==)
  • -ne -> diferente de (!=)
  • -gt -> maior que (>)
  • -lt -> menor que (<)
  • -ge -> maior ou igual (>=)
  • -le -> menor ou igual (<=)
  • -a -> AND (operador lógico)
  • -o -> OR (operador lógico)

Laços de repetição

For loop

#!/bin/bash
for i in {1..5}; do
    echo "Número: $i"
done
Enter fullscreen mode Exit fullscreen mode

While loop

#!/bin/bash
contador=1
while [ $contador -le 5 ]; do
    echo "Contador: $contador"
    ((contador++))
done
Enter fullscreen mode Exit fullscreen mode

Usamos ((expressão++)) para incrementar valores.

Funções

Podemos criar funções:

#!/bin/bash
diz_ola() {
    echo "Olá, $1!"
}

diz_ola "Alex"
diz_ola "Maria"
Enter fullscreen mode Exit fullscreen mode

O $1 é usado para indicar o primeiro argumento passado, e não está restrito ser usado em funções.

Trabalhando com arquivos e diretórios

Criar, ler e manipular arquivos:

#!/bin/bash
echo "Criando um arquivo..."
echo "Este é um arquivo de teste." > teste.txt

echo "Conteúdo do arquivo:"
cat teste.txt
Enter fullscreen mode Exit fullscreen mode

A expressão echo "texto" > texto.txt escreve um text dentro de um arquivo.

caté usado para exibir o conteúdo de um arquivo.

Existem muitos outros comandos e coisas possiveís que se pode fazer com shell script mas esta é uma introdução básica.

Top comments (0)