shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

DEBUG


From: Ricardo A Reis
Subject: DEBUG
Date: Thu, 28 Apr 2005 08:03:02 -0200
User-agent: Mozilla Thunderbird 1.0.2 (X11/20050415)


Caros,

Tenho o seguinte problema com debug, em um programa formado por varios outros programinhas em shell fica dificil depurar um comportamento anormal de algum deles e dessa foram resolvi criar um debug, o shell escolhido foi o bash por ser o default do linux, o funcionamento é mais ou menos o seguinte. Tenho um um shell que atravez de um for executa diversos outros que podem ou nao precisar de debug, eu criei algo com....
       Arquivo principal..
-------------------------------------------------------%
SH="/usr/local/bin/bash"
: ${DEBUG_LEVEL?=`export DEBUG_LEVEL=0`} #isso é muito feio mais nao consegui fazer ele testar se a variavel nao existe!! e atribuir o valor 0!!
if [ ${DEBUG_LEVEL} -eq 0 ];then
                _DEBUG_EMPTY=     #sem debug
fi
if [ ${DEBUG_LEVEL} -eq 1 ];then
_DEBUG_FULL="set -x" #debug nivel 1 apenas para o script inicial!!
fi
if [ ${DEBUG_LEVEL} -eq 2 ];then
               _DEBUG_FULL="set -x"
               _DEBUG_SCRIPTS="${SH} -x " #debug recursivo nivel 2
fi
${_DEBUG_EMPTY}${_DEBUG_FULL}


---------------------------------------------------------%


Preciso de uma variavel debug com level, e preciso passar essa variavel para o programa via console algo como

#DEBUG_LEVEL=2;./script

Da forma que eu consegui fazer tiver que exportar a variavel e mesmo assim se eu não a tiver no sistema o script fica com erro na linha " : ${DEBUG_LEVEL?=`export DEBUG_LEVEL=0`}",




Atenciosamente
Ricardo A. Reis
UNIFESP - SENAI
Unix and System Admin


reply via email to

[Prev in Thread] Current Thread [Next in Thread]