- - Como depurar scripts do Linux Bash com o ShellCheck

Como depurar scripts do Linux Bash com o ShellCheck

Você está tendo problemas com um script Bash que vocêescreveu para o seu PC Linux? Em vez de procurar por inúmeras threads no StackExchange para obter ajuda na programação, considere usar a ferramenta ShellCheck para depurar scripts do Linux Bash e encontrar automaticamente erros no seu código.

Obtenha o ShellCheck

O ShellCheck é uma ferramenta útil, mas não vemcom seu sistema operacional Linux pronto para uso. Em vez disso, se você quiser usá-lo, precisará instalá-lo primeiro. Neste tutorial, mostraremos como instalar o ShellCheck a partir de várias fontes oficiais de software. Além disso, também mostraremos como fazer o programa funcionar através do binário genérico do Linux.

Abra uma janela do terminal e atualize seus pacotes. Em seguida, siga as instruções que correspondem ao seu sistema operacional Linux.

Ubuntu

O ShellCheck está nas fontes oficiais de software Ubuntu, por isso é muito fácil instalá-lo. Em um terminal, use o gerenciador de pacotes Apt e obtenha a versão mais recente do ShellCheck em funcionamento.

sudo apt install shellcheck

Debian

O Debian Stable possui uma versão mais antiga do ShellCheck pronta para instalação pelos usuários. Lembre-se de que esta versão é retida devido a como o Debian faz as coisas.

Nota: deseja uma versão mais recente do programa ShellCheck? Siga nosso guia e aprenda sobre como obter um software mais moderno no Debian.

sudo apt-get install shellcheck

Arch Linux

Para obter o ShellCheck no Arch Linux, primeiroprecisa ativar o repositório de software “Comunidade”. Ativar "Comunidade" requer a edição do arquivo Pacman.conf. Para editar o arquivo, abra o Pacman.conf no Nano.

sudo nano /etc/pacman.conf

Percorra (com as teclas de seta) e encontre a seção "Comunidade" do arquivo. Remova todas as instâncias do símbolo # (aproximadamente três linhas). Em seguida, salve as edições pressionando o botão Ctrl + O botão.

Com as novas edições do Pacman.conf, pressione Ctrl + X fechar Nano. Em seguida, ressincronize o Pacman para configurar o acesso ao repositório "Comunidade" do Arch Linux.

sudo pacman -Syyuu

Por fim, instale o ShellCheck no Arch Linux com:

sudo pacman -S shellcheck

Fedora

Para obter a ferramenta de análise de script ShellCheck no Fedora Linux, abra um terminal e use a ferramenta de gerenciamento de pacotes DNF.

sudo dnf install ShellCheck

OpenSUSE

A instalação do ShellCheck no OpenSUSE não requer etapas especiais, pois está nas principais fontes de software da distribuição. Para obtê-lo, digite o seguinte comando do pacote Zypper em uma janela do terminal.

sudo zypper install ShellCheck

Linux genérico

Usuários de distribuições Linux menos conhecidas queO acesso à ferramenta de análise de script ShellCheck deve instalar a versão binária universal. Felizmente, esta versão binária é fácil de instalar e não requer ajustes no código fonte. Para fazê-lo funcionar, siga as etapas abaixo!

Passo 1: exporte a versão do ShellCheck que você está prestes a baixar para o seu ambiente de terminal.

export scversion="stable" # or "v0.4.7", or "latest"

Passo 2: usando o wget ferramenta de download, pegue a última versão binária do ShellCheck.

wget "https://storage.googleapis.com/shellcheck/shellcheck-${scversion}.linux.x86_64.tar.xz"

Etapa 3: extrair o arquivo ShellCheck TarXZ com o alcatrão comando.

tar --xz -xvf shellcheck-"${scversion}".linux.x86_64.tar.xz

Passo 4: instale o ShellCheck no seu PC Linux com o cp comando.

cp shellcheck-"${scversion}"/shellcheck /usr/bin/

Scripts de depuração com ShellCheck

O objetivo principal do ShellCheck é examinar um script (geralmente o Bash), detectar comandos mal utilizados e oferecer correções. Para uso básico, faça o seguinte.

Primeiro, CD para onde o script que você deseja verificar está no seu PC Linux. Neste tutorial, nosso script está em ~ / shell-scripts. O seu pode ser diferente.

cd ~/shell-scripts

Execute o ls comando e visualize todos os arquivos no diretório atual.

Nota: se você pretende usar o ShellCheck em um diretório com vários tipos de arquivo, é uma boa ideia combinar grep e ls juntos. O uso desses dois comandos juntos permite filtrar todos os arquivos que não são de script.

ls

Ou, combine com grep para exibir apenas arquivos de script.

ls | grep ".sh"
ls | grep ".bash"

Encontre o nome de um arquivo de script no diretório ls prompt e realce o nome do arquivo com o mouse. Quando estiver pronto, execute-o no ShellCheck e verifique seu código.

shellcheck name-of-file.sh

ou

shellcheck name-of-file.bash

Imediatamente após o cheque comando for executado, ele detectará problemas com seu código e o colocará no prompt do terminal. Leia e aprenda como melhorar sua programação seguindo as sugestões que ela lhe fornece.

Salvar o relatório do ShellCheck em um arquivo

Obter um relatório instantâneo no terminal parasua programação do bash é super útil, no entanto, você pode perdê-la se fechar o terminal. Para evitar perder seu relatório de verificação de shell, recomendamos salvar a saída em um arquivo de texto, executando o programa em combinação com o >> recurso no terminal.

shellcheck name-of-file.sh >> ~/Documents/shellcheck-report-name-of-file.sh

ou

shellcheck name-of-file.bash >> ~/Documents/shellcheck-report-name-of-file.bash

Veja seu relatório salvo no terminal através do gato comando.

cat ~/Documents/shellcheck-report-name-of-file.sh | more

ou

cat ~/Documents/shellcheck-report-name-of-file.bash | more
</p>

Comentários