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

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

Re: [shell-script] O que faz estes comandos?!? [sSyY] ...


From: Tiago Peczenyj
Subject: Re: [shell-script] O que faz estes comandos?!? [sSyY] ...
Date: Tue, 2 Aug 2005 23:35:23 -0300

comandos
shift :  ele faz com que os argumentos $1 $2 $3 troquem de posição,
retrocedendo uma posição. $2 vira $1, $99 vira $98...

por que ? o primeiro argumento está sendo usado no case. $* significa
todos os argumentos, mas quando vc faz shift, o primeiro é suprimido.

O resto se vc consultar o man dos comandos vai descobrir. Faça uns
testes com eles.

Em 02/08/05, Louis Marcondes<address@hidden> escreveu:
>  Ola pessoal, necessito de algumas informações sobre o que faz os
>  seguinte comandos que estao com #?????????????? ...abaixo esta as
>  funcoes que uso, apos elas esta a descricao do que faz.
>  
>  erro()
>  {
>    SAIR=$1  #atribui o valor
>    shift         # ???????????
>    case $SAIR in
>        [sSyY]*|1) #??????????? 
>                     echo "$PROG ERRO : $*" >&2 #?????????
>                     [ -f $TMP_LOG ] && echo "##### $PROG ERRO : $*" >>
>  $TMP_LOG 2>&1
>                      fim_script
>                      exit 1 ;;
>                  *)
>                         echo "$PROG Aviso: $*" >&2
>                         echo "##### $PROG Aviso: $*" >> $TMP_LOG 2>&1 ;;
>          esac
>  } 
>  
>  fim_script()
>  {
>          # Retencao de log: Preserva no maximo MAX_RETENCAO linhas
>  anteriores no log
>          if [ `cat $LOG 2> /dev/null | wc -l` -gt $MAX_RETENCAO ]; then
>  #????????????
>                 echo "##### $PROG: Preservadas apenas as $MAX_RETENCAO
>  ultimas linhas\n" > $TMP_TRUNC
>                  tail -$MAX_RETENCAO $LOG >> $TMP_TRUNC #?????????
>                  mv $TMP_TRUC $LOG
>          fi
>  }
>  
>  
>  
> ################################################################################
>  #      -> FUNCAO: FIM_SCRIPT                              
>            
>          #
>  #                                                         
>               # 
>  #  Esta funcao concentra as operacoes de "limpeza" e fechamento que devem  
>    #
>  #  sempre ser feitas na finalizacao do programa, seja no final da execucao 
>    #
>  #  normal, seja quando o programa eh interrompido (por erro fatal
> identificado #
>  #  ou interrupcao). A utilizacao desta funcao garante a finalizacao        
>    #
>  #  consistente do programa nas diversas situacoes. Nesta funcao tratamos:  
>    #
>  #  finalizacao de log ate limpar logs antigos, enviar log corrente por
> email   #
>  #  e concatenna-lo ao log cumulativo ate a remocao dos arquivos
> temporarios.   #
>  #                                                         
>                     #
> ################################################################################
> ##################################################################################
>  #       -> FUNCAO: ERRO                                   
>            
>            #
>  #                                                         
>            
>            #
>  #  Esta funcao faz o tratamento padronizado de erros fatais (que
>  impedem o       #
>  #  prosseguimento da execução) e de avisos (erros "leves", não-fatais)
>  no script.#
>  #  No caso de encerramento do programa, deve ser chamada a função
>  fim_script e   #
>  #  gerado um código de saída diferente de 0, para sinalizar a
>  finalização        #
>  #  anormal do script. A mensagem de erro deve ser enviada para a saída
>  de erro   #
>  #  (stderr, descritor &2). Além disso, optei por enviar a mensagem
>  também para o #
>  #  log, com o seguinte critério: avisos vão sempre para o log e erros
>  vão apenas #
>  #  quando já existe algum log.                            
>            
>            #
>  #                                                         
>            
>            #
> ##################################################################################
>  
> 
> ---------------------------------------------------------------------
>  Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
>  Sair da lista: address@hidden
> ---------------------------------------------------------------------
>  Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>  
> 
>  
>  ________________________________
>  Links do Yahoo! Grupos
>  
>  
> Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/shell-script/
>   
> Para sair deste grupo, envie um e-mail para:
> address@hidden
>   
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.


reply via email to

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