ArtigosCategoria

Bash — Um Guia Básico Para Iniciantes

Tempo de leitura:6 min
Lívia Bentini

Você usa o sistema Unix? Se sim, provavelmente, já ouviu falar sobre bash, um shell bastante utilizado nesse sistema operacional. Se você não sabe o que é shell, não se preocupe, a gente te explica! Continue lendo para entender melhor sobre o assunto.

Neste artigo você verá:

  • o que é bash?;
  • principais aplicações do bash;
  • entenda a sintaxe básica da linguagem bash.

O que é bash?

O Bourne Again Shell ou bash, para abreviar, é um shell do Unix, mas também é uma linguagem de programação capaz de realizar diversas tarefas que ajudam a economizar tempo e energia.

Um shell é um programa que permite que o usuário se comunique diretamente com o sistema operacional. Ele recebe e interpreta comandos enviados pelo operador ao Kernel — outro programa que gerencia todas as comunicações para o hardware — para que a ação desejada possa ser executada.

Ou seja, é no shell que todos os comandos, scripts e programas rodam. Mas o bash é muito mais do que essa interface do sistema operacional, sendo também uma linguagem de programação. Continue lendo para saber mais!

Principais aplicações do bash

Compatível com o sh que executa comandos linux, com o bash o computador consegue executar sequências de comandos automaticamente. Isso significa que não é a pessoa por trás da máquina que realiza, de fato, todo o processo.

Por esse motivo, essa linguagem é uma das preferidas quando o assunto é automação de tarefas rotineiras e administrativas de um desenvolvedor. 

Assim como ocorre com outras linguagens de script, o bash permite que softwares-pai recebam aprimoramentos constantes de forma prática. Além dessa função básica, também é possível realizar diversas configurações de software e extrair dados.

Com o bash, em vez de passar horas executando diversos comandos de forma manual, você pode simplesmente criar um script e a máquina realiza todo o trabalho sozinha. Bem prático, concorda?

Em resumo, as principais aplicações dessa linguagem são:

  • manipular arquivos;
  • monitorar o sistema operacional;
  • realizar automação de processos de compilação de código;
  • executar backups de rotina;
  • vincular programas existentes;
  • realizar lotes de conclusão;
  • criar ambientes para programas;
  • executar programas.

Entenda a sintaxe básica da linguagem bash

Muitos desenvolvedores têm facilidade com a linguagem bash e aprendem a programar nela em pouco tempo. 

Mas, mesmo sendo relativamente simples, é preciso bastante atenção ao utilizá-la, porque qualquer erro que passe despercebido no código pode causar uma grande dor de cabeça para solucioná-lo!

A premissa de qualquer script shell é ser simples e eficiente. Por isso, no bash, as linhas e scripts de comando usam a mesma sintaxe, a fim de evitar erros de interpretação.

A sintaxe básica dessa linguagem é bash [options] [file]. Um exemplo clássico para você ver como funciona, é a configuração do “hello world”, que aparece ao ligar a máquina. Para isso, basta realizar um único comando:

 #!/bin/bash          

          echo Hello World  

O script é simples, com apenas duas linhas:

  • a primeira indica qual programa o sistema operacional deve utilizar para executar o comando;
  • a segunda mostra a única ação que o script deve realizar.

Nesse exemplo, o comando irá imprimir “hello world” no terminal.

Existem alguns elementos aos quais quem quer programar nessa linguagem deve estar atento:

  • na hora de colocar as pontuações sintáticas, é preciso que elas sejam declaradas de forma explícita;
  • ao inserir instruções de programa, é preciso que elas sejam colocadas na linha de comando, antes de apertar o “enter” no teclado;
  • se for configurar uma segunda instrução no programa, saiba que ela pode, ou não, depender das ações orientadas pela primeira;
  • se você estiver utilizando um sistema de shell CLI, é preciso usar o ponto e vírgula para encerrar cada uma das instruções e separá-la das próximas;
  • ainda sobre os programas de shell CLI, você pode utilizar o ponto e vírgula implícito ou explícito.

Outro ponto interessante para quem programa em bash é que essa linguagem permite o uso de variáveis, que são tags ou nomes que você pode utilizar no lugar de números, para executar determinado comando.

Além de tornar o seu trabalho mais prático e intuitivo, há ainda a vantagem das variáveis em shell poderem receber qualquer tipo de conteúdo: textos, números e até mesmo status de saída de algum comando.

Vale lembrar que o conteúdo de uma variável deve conter o símbolo “$” antes do seu nome. 

Falando nos nomes, eles são escritos em letras maiúsculas, para distinguir daquelas configuradas no script que, geralmente, são em minúsculas. 

Existem as variáveis de shell e de ambiente. A diferença entre elas é que a primeira está disponível apenas no shell atual, enquanto a segunda está presente em um determinado programa ou em programas-filhos. 

Variáveis de ambiente

  • LANG: determina a configuração atual de idioma e localização;
  • HOME: mostra o diretório de base do usuário;
  • PATH: dá a lista de diretórios que o sistema operacional verifica ao procurar por algum comando;
  • SHELL: apresenta o shell responsável por processar os comandos;
  • PWD: mostra o diretório de trabalho atual;
  • USER: configura o usuário conectado;
  • TERM: mostra o terminal que está sendo utilizado;
  • MAIL: configura o caminho para o e-mail do usuário

Variáveis de shell

  • IFS: quando utilizada no campo interno, tem a função de separar entradas na linha de comando;
  • UID: mostra a identidade do usuário que estiver utilizando no momento;
  • HOSTNAME: nome do host da máquina;
  • HISTFILESIZE: mostra o número de linhas de histórico de comando que estão armazenadas;
  • SHELLOPTS: exibe as opções de shell que podem ser definidas ao utilizar a opção “set”;
  • DIRSTACK: mostra os diretórios com os comandos pushd e popd;
  • BASH_VERSION: versão do bash.

Gostou de aprender como o bash pode facilitar a sua vida? Então confira também o artigo sobre linguagem PHP!