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

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

Re: [shell-script] Erro em script


From: Emerson Domingues Souto
Subject: Re: [shell-script] Erro em script
Date: Wed, 11 Jan 2006 17:48:43 -0200

Olá Sergio,

olha o script está me parecendo complicado, tenho 2 sugestões,

1a: reescrever o script utilizando comandos mais simples

Ex:

# OBS talvez precise de algumas adaptacoes
assunto_t=""
while true ; do
done
   read -p "Insira a palavra para bloquear por ASSUNTO: " assunto
   if test -z $assunto_t ; then
       assunto_t="$assunto"                       # primeira vez
   else
       assunto_t="$assunto_t\n$assunto"    # da segunda vez em diante acumula
   fi

   read -p "Deseja mais alguma palavra? " resposta
   if ! [ "$resposta" = "S" ] ; then
      break
   fi
done
(echo -e $assunto_t && cat /var/log/refused-mail) >> /home/sergio/block.txt


2a: corrigir o teu script, me parece que ta faltando fechar os dois primeiros 
EOF, segue correcao:

  ----- Original Message ----- 
  From: Sergio Maia Rabelo 
  To: address@hidden 
  Sent: Wednesday, January 11, 2006 4:42 PM
  Subject: [shell-script] Erro em script


  Olá pessoal estou fazendo um script para inserir regras no /etc/procmail
  estou fzendo um teste primeiro segue o mesmo abaixo:
  =================
  echo Insira a palavra para bloquear por ASSUNTO:
  read assunto
  echo Deseja mais alguma palavra?
  read resposta
  if $resposta = S
  then
  echo Digite a segundo assunto para bloqueio:
  read assunto1
  cat >> /home/sergio/block.txt << EOF
  :0
  * ^Subject:.*($assunto|$assunto1).*
  /var/log/refused-mail
  EOF # aqui tava faltando fechar
  else
          cat >> /home/sergio/block.txt << EOF
          :0
          * ^Subject:.*($assunto).*
          /var/log/refused-mail
  EOF # aqui tava faltando fechar
          exit 0
          Mais alguma? =)
          read resposta2
                  if $resposta2 = S
                  then
                  echo Digite a terceiro assunto para bloqueio:
                  read assunto2
                          cat >> /home/sergio/block.txt << EOF
                          :0
                          * ^Subject:.*($assunto|$assunto1|$assunto2).*
                          /var/log/refused-mail
                          EOF
                  else
                  exit 1
                  fi
  fi
  =================
  O problema ae é que chega na segunda condição "Deseja mais alguma palavra?"
  independente de responder S ou N ele para dando o seguinte erro:

  teste: line 44: syntax error: unexpected end of file

  O que pode estar acontecendo ??? Também gostaria de saber se alguém pode me
  ajudar em inserir as regras sendo as palavras continuadas tipo em vez de uma
  regra para no maximo 3 assuntos, conforme acima, e sim uma regra para várias
  palavras.
  Valeu.
  Sérgio Maia Rabelo


  [As partes desta mensagem que não continham texto foram removidas]



[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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