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!