O que são scripts Bash e por que você deveria usá-los?

O que são scripts Bash e por que você deveria usá-los?

Um tipo de programação que seu negócio não deve ignorar, que também é simples, eficaz e flexível.

Imagem em destaque

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?

Uma ilustração da linguagem de script 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?

Uma ilustração de uma interface shell do Linux.

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

Uma ilustração dos 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

Conteúdo Relacionado

O Rails 8 sempre foi um divisor de águas...
A GenAI está transformando a força de trabalho com...
Entenda o papel fundamental dos testes unitários na validação...
Aprenda como os testes de carga garantem que seu...
Aprofunde-se nas funções complementares dos testes positivos e negativos...
Vídeos deep fake ao vivo cada vez mais sofisticados...
Entenda a metodologia por trás dos testes de estresse...
Descubra a imprevisibilidade dos testes ad hoc e seu...
A nomeação de Nacho De Marco para o Fast...
Aprenda como os processos baseados em IA aprimoram o...
Como engenheiro de software, estou constantemente enfrentando desafios interessantes...
De todas as principais preocupações com segurança, nós suamos...
Eu uso Linux há quase 30 anos e já...
Durante décadas, o Ubuntu foi considerada uma das distribuições...
A web está em constante evolução, e com ela,...
A Inteligência Artificial (IA) tem sido um tema cada...
Você já se sentiu frustrado com a complexidade de...
O OpenStack é uma plataforma de computação em nuvem...
Você já se sentiu frustrado com a criação de...
Вернуться к блогу

Комментировать

Обратите внимание, что комментарии проходят одобрение перед публикацией.