Um tipo de programação que seu negócio não deve ignorar, que também é simples, eficaz e flexível.
Se você mencionar scripts bash para qualquer administrador ou desenvolvedor de tecnologia, será saudado com acenos de aprovação ou um empolgante “Já estive lá, fiz isso”. A razão para isso é que os scripts bash são uma ferramenta incrivelmente útil que ajuda a tornar o sistema operacional Linux flexível, poderoso e útil.
Mas o que são scripts bash e por que você deveria usá-los?
Essas perguntas são feitas com frequência e facilmente respondidas. Mas antes de ouvir a explicação, você provavelmente deveria primeiro saber o que é bash. Afinal, você provavelmente já sabe o que é um script, então juntar esses dois mais dois começa no próprio terminal.
O que é Bash?
Simplificando, bash é um shell e uma linguagem de comando usada no Linux. Ok, isso é ótimo, mas o que é uma concha? No domínio do Linux, o shell é um interpretador de linha de comando que fornece uma interface de usuário para executar comandos. Sem o shell, você não poderia executar comandos. Sem comandos, não haveria sistema operacional. Sem um sistema operacional, não haveria PC.
Portanto, bash é um tipo de shell que permite executar comandos no Linux.
Mas o que isso tem a ver com sua equipe de desenvolvimento?
Duas palavras: scripts de shell.
O que são scripts de shell?
Agora chegamos ao cerne da questão. Um shell script é um programa de computador projetado para ser executado dentro do shell (neste caso, bash). Cada shell tem sua própria linguagem de script e, como o bash é o shell padrão do Linux, a maioria das equipes de desenvolvimento e administração usa a linguagem de script bash.
Com esses scripts, você pode fazer quase tudo. E, como o Python, eles são bastante fáceis de aprender e não requerem um compilador para serem usados.
Para realmente entender o shell script, primeiro você precisa entender como usar a linha de comando no Linux. Vamos dar uma olhada em um exemplo muito simples. Digamos que você queira imprimir a seguinte frase:
A data e a hora são
Seguindo o acima, você deseja imprimir a data e hora reais, usando o data comando. Isso seria feito com:
echo "The date and time is " $(date)
Pressione Enter e a saída será mais ou menos assim:
The date and time is Wed Jan 19 09:04:16 AM EST 2022
Veremos agora como isso é feito com um script bash.
Como criar um script Bash
A primeira coisa que você deve saber é que todo script bash começa com:
#!/bin/bash
Crie um novo arquivo com o comando:
nano date.sh
Adicione #!/bin/bash ao topo do script, que instrui o terminal que tudo encontrado no arquivo faz parte de um script. Depois disso, podemos criar nosso programa com apenas algumas linhas. A primeira coisa que faremos é formatar a data como quisermos usando uma variável como esta:
formatted_date=$(date +%m_%d_%y-%H.%M.%S)
O texto acima exibirá a data no formato de data (mês, dia, ano) e depois a hora (hora, minutos, segundos). Usaremos essa variável (data_formatada) em conjunto com o nosso eco comando na linha:
echo "The date and time is " $formatted_date
Salve e feche o arquivo e conceda permissões executáveis ao script com:
chmod u+x date.sh
Se você executar o comando ./data.sha saída será semelhante a quando você executou o eco comando da janela do terminal.
E é assim que você constrói um script bash.
Por que você precisa de scripts Bash
Agora que você entende o básico de como os scripts bash funcionam, é importante saber que os scripts bash podem ser qualquer coisa, desde aplicativos simples de uma ou duas linhas até aplicativos incrivelmente complexos que podem fazer praticamente qualquer coisa (desde fazer backup de diretórios em unidades externas, para executar testes de ping para tempo de atividade do site, monitorar o desempenho do servidor e tarefas administrativas personalizadas. Na verdade, há muito pouco que os scripts bash não podem fazer (desde que você não precise de uma GUI).
Um grande benefício do uso de scripts bash é que eles podem ser criados com muito pouco (ou zero) conhecimento de programação. Isso significa que você pode criar aplicativos Linux sem GUI sem primeiro precisar aprender a programar.
Se você pode executar um comando, você pode escrever um script.
E dada a flexibilidade dos scripts bash, você pode realmente aproveitá-los bastante antes de se deparar com uma parede e ter que recorrer a habilidades de programação mais tradicionais.
Prós e contras dos scripts Bash
Existem várias vantagens em usar scripts bash e apenas algumas desvantagens.
Vantagens dos scripts Bash
As vantagens dos scripts bash incluem:
- Simples de criar
- Pode executar vários comandos facilmente
- Depuração interativa
- Portátil
- Economia de tempo
- Custo-beneficio
- Pode ser automatizado
- Instalado em quase todos os sistemas operacionais Linux
Desvantagens dos scripts Bash
O script Bash tem suas desvantagens, que incluem:
- Não tão rápido quanto um programa padrão
- Usabilidade limitada (quando comparada a programas tradicionais)
- Inicia um novo processo para cada comando shell executado (o que significa que pode consumir muitos recursos, se um script for complexo)
Conclusão
Quanto mais tempo seus administradores trabalharem com o sistema operacional Linux, eles acabarão recorrendo a um script de shell. Na verdade, você deve incentivá-los a começar com scripts de shell para realizar tarefas menores e depois migrar para o desenvolvimento tradicional quando se depararem com o obstáculo inevitável.
Como os shell scripts são tão fáceis de aprender e criar, eles também são uma boa introdução à programação. Se você tem estagiários ou desenvolvedores do primeiro ano na equipe, peça-lhes que comecem a trabalhar com scripts de shell como uma forma de facilitar o trabalho mais pesado que farão com Java, JavaScript ou .NET.
Perguntas frequentes
Os scripts Bash podem ser usados em todos os sistemas operacionais?
Os scripts Bash têm suporte nativo em sistemas baseados em Unix, como Linux e macOS. Para Windows, o Bash pode ser usado por meio de subsistemas como o Windows Subsystem for Linux (WSL) ou por meio de aplicativos de terceiros como o Cygwin.
Os scripts Bash são adequados para desenvolvimento de software em larga escala?
Os scripts Bash geralmente são mais adequados para tarefas de automação de pequeno e médio porte, administração de sistemas e controle simples de outros softwares. Para desenvolvimento de software em larga escala, normalmente são recomendadas linguagens de programação mais abrangentes.
Como os scripts Bash se comparam aos scripts Python em termos de facilidade de uso e funcionalidade?
Os scripts Bash são excelentes para manipulação de arquivos, administração de sistemas e automação de tarefas diretamente em sistemas do tipo Unix. Python, sendo uma linguagem de programação completa, é mais versátil e fácil para tarefas complexas, manipulação de dados e aplicativos multiplataforma.
É necessário ter experiência em programação para começar a escrever scripts Bash?
Não é necessário ter experiência anterior em programação para começar a escrever scripts Bash. O script Bash básico pode ser bastante simples e geralmente é um bom ponto de partida para aprender conceitos de programação, especialmente para aqueles que usam frequentemente sistemas operacionais do tipo Unix.
Fonte: BairesDev