SOLIN-08

8. Shell Script

Atualizado em: 12 de março de 2024

 

Por: Nelson H. Koshoji

8.1. Shell

O shell é uma interface de usuário para acessar os serviços do sistema operacional. Nos sistemas baseados em Unix, como o Linux, ele pode ser tanto uma interface de linha de comando (CLI) quanto uma interface gráfica (GUI). No entanto, quando falamos sobre shell em relação ao shell script, estamos geralmente nos referindo à interface de linha de comando.

A função principal do shell é permitir que os usuários executem comandos. Ele interpreta comandos inseridos pelo usuário e os converte em ações realizadas pelo sistema operacional. O shell também fornece uma linguagem de programação, que é utilizada para criar scripts, que são programas que podem executar uma série de comandos automaticamente, sem a necessidade de entrada do usuário após o início do script.

Aqui estão alguns pontos-chave sobre o shell:

  • Interface com o usuário: O shell fornece um prompt de comando, onde os usuários podem digitar comandos.
  • Interpretador de comandos: Ele lê a entrada do usuário e a interpreta como uma solicitação de operação no sistema operacional.
  • Linguagem de script: O shell também funciona como uma linguagem de programação que permite a criação de scripts. Esses scripts são usados para automação de tarefas, como backup de dados, atualização do sistema ou qualquer outra rotina.
  • Ambiente de trabalho: O shell define um ambiente onde são estabelecidas variáveis, configurado o PATH (caminhos para os executáveis) e outras configurações de ambiente que afetam o comportamento do sistema e dos programas.
  • Personalizável: O shell permite que o usuário personalize seu ambiente e interação com o sistema operacional através de arquivos de configuração como .bashrc ou .zshrc.

Existem diferentes tipos de shells disponíveis para sistemas baseados em Unix, e cada um possui suas próprias características e comandos específicos, embora muitos comandos sejam padronizados e comuns entre eles. Os mais comuns são:

  • Bash (Bourne Again Shell): O mais comum e padrão em muitos sistemas.
  • Zsh (Z Shell): Conhecido por suas melhorias de usabilidade e recursos para programação interativa.
  • Fish (Friendly Interactive Shell): Destaca-se por sua interface amigável e sugestões automáticas.
  • Ksh (Korn Shell): Combina recursos do Bash e do C shell (csh), com alguns recursos de programação adicionais.
  • Tcsh: Uma versão melhorada do C shell com programação de linha de comando e histórico editável.

Cada shell pode ter sua própria sintaxe para recursos avançados, mas os conceitos básicos de execução de comandos e scripts são geralmente consistentes entre eles.

 

8.2. Primeiro Shell Script

Passo 1: Crie um novo arquivo para o seu script

Você usará um editor de texto no terminal para escrever seu script. Pode usar o nano:

Digite o seguinte comando no terminal para criar e abrir um novo arquivo chamado hello_world.sh:

#nano hello_world.sh

 

Passo 2: Escreva o script

Uma vez no editor, digite o seguinte conteúdo:

#!/bin/bash

echo “Hello World!”

A primeira linha, chamada de shebang, diz ao sistema que este script deve ser executado pelo Bash. A segunda linha é o comando que será executado pelo script, que imprime “Hello World!” no terminal.

 

Passo 3: Salve o arquivo e Torne o script executável

De volta ao terminal, você precisará dar permissão de execução para o seu script com o seguinte comando:

chmod +x hello_world.sh

Isso torna o arquivo hello_world.sh um executável.

 

Passo 4: Execute o script

Agora que o script é executável, você pode rodá-lo com o seguinte comando:

./hello_world.sh

./hello_world.sh

 

Você deverá ver a saída “Hello World!” impressa no terminal.