Normalmente não gosto muito dessa parte :) já que acho este ramo do conhecimento excelente para autodidatismo e experimentação.
Vou pegar a linha que você está passando, reescreve-la e inserir alguns comentários. Talvez fique mais legível. if [ "$LOG" = "" ];then # se variavel LOG já tem conteúdo, desvia # define nome do LOG como nome do script ($0) em execução LOG=/tmp/${0##*/}.log # chama o próprio script, LOG em linha, poderia ter usado antes "export LOG" LOG=$LOG $0 $* 2>&1|tee $LOG # $* são todos os parâmetros recebidos por um script em linha de comando # encerra, pois o script já foi "rechamado" da forma desejada exit fi A diferença de escrita é mera "semântica" tolerada pelo shell. Espero que tenha ajudado. ------------------------------------------------------------------ >From: Gemayel Alves >Este codigo funcionou como uma luva, mop vc poderia explicar esta linha para que eu e alguns como eu q não entenderam bem o funcionamento possamos entender? > >[ $LOG ]||{ LOG=/tmp/${0##*/}.log;LOG=$LOG $0 $* 2>&1|tee $LOG;exit;} --------------------------------------------------------------------- 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: [EMAIL PROTECTED] --------------------------------------------------------------------- Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net --------------------------------------------------------------------- Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil 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: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html