Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Aprenda inglês de uma vez por todas

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Como usar o debug no bash

Colaboração: Rodrigo Bernardo Pimentel

Data de Publicação: 23 de Março de 2001

Quando se executa um script em bash e um erro ocorre, é comum só vermos uma mensagem de erro, sem saber exatamente onde ela está sendo originada. A solução comum (e trabalhosa) é colocar flags no meio do script, pra ir "fechando o cerco", como "echo 'Linha 1'", "echo 'Linha 10'" etc.

Um jeito melhor é executar o script com "bash -x":

# bash -x /path/pro/script

Ou mesmo, se a intenção for deixar esse comportamento permanente, ou persistente por algum tempo, mudar a primeira linha do script de algo como

  #!/bin/bash

Para

  #!/bin/bash -x

Isso imprime na saída padrão todos os passos executados pelo script, valores de variáveis etc, tornando muito mais fácil o debug.

A propósito, é normal que a saída de um bash -x seja maior do que uma tela. Isso se resolve, é claro, com um "| less". O problema é que muitas vezes se usa o bash -x justamente pra se checarem mensagens de erro, que não são capturadas na solução acima. Então, uma boa sugestão é fazer:

  bash -x /path/pro/script 2>&1 | less

Isso redireciona a saida de erro tambem pro "| less" .

Veja a relação completa dos artigos de Rodrigo Bernardo Pimentel

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.98/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1114 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script
Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Read in English - Uma Maneira Divertida de Aprender Inglês