Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Debugando shell scripts
Linux user
SMarcell
29/05/2008
Um simples artigo que mostrará ao usuário iniciante em programação shell script algumas formas de se debugar scripts em busca daqueles erros, por vezes difíceis de serem detectados à primeira vista.
Por: Sandro Marcell | Blog: http://my.opera.com/smarcell/blog/
[ Hits: 10707 ]
Conceito: 10.0   3 voto(s)3 voto(s)3 voto(s)3 voto(s)3 voto(s) + quero dar nota ao artigo

Introdução

Para muitos usuários que estão iniciando em programação, uma das principais dores de cabeça é descobrir erros que ocorrem em seus programas, eu mesmo já passei por isso e sei o quanto é chato ver aquele seu primeiro programa feito com muito esforço e dedicação não funcionar de jeito nenhum.

Em virtude disso, resolvi escrever este simples artigo cujo intuito é dar uma força àqueles que estão começando a programar em shell script, seja ele sh, csh (tcsh), bash, ksh ou zsh.

Descobrindo erros

Todos os interpretadores de comando que foram citados no início do artigo fornecem opções para debugar as linhas de entrada que lhes são fornecidas, e essas opções são comuns a todos eles. São elas:
  • -v: Mostra a linha de entrada que está sendo lida pelo shell.
  • -x: Mostra as variáveis já substituídas, comandos e seus argumentos no momento de sua execução.

Vejamos alguns exemplos:

Crie um simples script com o seguinte conteúdo:

#!/bin/sh -v
echo "Olá mundo\!"
exit $?

Execute-o e note que ao utilizar a opção -v o interpretador imprime na tela a linha que esta sendo lida e prossegue normalmente com sua execução. Agora no mesmo script, vamos substituir o -v pela opção -x.

Note agora que a opção -x possui basicamente o mesmo comportamento da opção -v, exceto pelo fato de que os todos os comandos são marcados com um sinal de '+' e que as variáveis são substituídas pelos seus respectivos valores. Caso queira um modo debug completo, utilize as duas opções juntas (-vx).

Com isso é possível notar que fica muito mais fácil procurar por possíveis erros em nossos scripts, sejam eles causados por substituição de variáveis ou comandos com sintaxe incorreta.

Próxima página >>




Páginas do artigo
   1. Introdução
   2. Debugando com o built-in set
   3. Criando uma função debug

Outros artigos deste autor
Nenhum artigo encontrado.

Leitura recomendada

Comentários
[1] Comentário enviado por dailson em 29/05/2008 - 12:06h:

Excelente dica !!
Parabéns

[2] Comentário enviado por templuseletronic em 29/05/2008 - 15:10h:

Muito boa dica,principalmente para iniciantes em script...


[3] Comentário enviado por Pianista em 29/05/2008 - 17:46h:

muito bom pra iniciantes e até mesmo pra quem já tem esperiencia.

[4] Comentário enviado por Xico_Ambrozio em 29/05/2008 - 18:39h:

O mestre do shell script, SMarcell!!!

Muito bom seu artigo. Simples e objetivo - direto ao ponto!

Parabéns!

Falou!!!

[5] Comentário enviado por gjr_rj em 29/05/2008 - 18:43h:

Queria ter lido uma dica assim quando fiz o meu primeiro script.
Mesmo já tendo uma experiêcia, vai ajuda em muito.

Parabéns!

[6] Comentário enviado por teixeira em 30/05/2008 - 10:47h:

Parabéns!

[7] Comentário enviado por f_Candido em 30/05/2008 - 12:29h:

Muito Bom. Simples e Direto.

Abraços

[8] Comentário enviado por GilsonDeElt em 02/06/2008 - 14:38h:

Valeu, cara!
Congratulations, SMarcell!

Os scripteiros de plantão que nem eu agradecem pela dica, simples, direta e produtiva.

Engraçado que quando meus scripts dão pau, eu fico meio sem saber onde, e começo aquela longa revisão manual...
Agora, vou poder "quebrar" essa revisão!

abraços, cara!
E que venha o próximo artigo!

[9] Comentário enviado por VonNaturAustreVe em 02/06/2008 - 19:59h:

Hi

Perfeita á dica isso vai quebrar um galhão.

[]'s

[10] Comentário enviado por cesar em 03/06/2008 - 13:05h:

Muito bom,

[]'s

[11] Comentário enviado por guino_luis em 07/04/2009 - 14:58h:

Boa dica, vai ajudar muito na procura de erros!!
vlw

Guino

[12] Comentário enviado por fdmarp em 25/04/2009 - 12:28h:

bacana


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.