On Mon, Oct 23, 2017 at 09:47:18AM -0200, Felipe Castro wrote:
> Ankaŭ mi tre ŝatis la sugeston, filtriloj ekzistas en pluraj
> retpoŝt-klientoj, eĉ Gmail ebligas fari tion... :-)

  La alia programo uzata de mi por legi mesaĝojn estas "mutt".  "Mutt" ne
  elŝutas mesaĝojn. Kiu faras tion ĉi tie estas "fetchmail".   Ĝi
  labora kune "script" por filtri mesaĝojn.

  Tri linioj estas aldonita de mi en la "script" por montri aldonon
  "[debina-users-eo]" en temlinion.

  La linioj estas:
  
    ARQNAME1=/tmp/teste.txt
  cat  $ARQNAME > $ARQNAME1


 if [ `grep -i "List-Id: <debian-esperanto.lists.debian.org>" $ARQNAME | wc -l 
` -ne 0 ]; then sed s/"Subject:"/"Subject: [debian-users-eo] "/ $ARQNAME1 > 
$ARQNAME fi

 La plena "script" estas:

 #!/bin/sh
#
# Script para salvar um email em um determinado diretório com a estrutura 
Maildir
#
# A estrutura Maildir consiste em ter 3 diretórios: cur, new e tmp.
#
# O cur sao as mensagens já lidas, ou seja, na caixa corrente. O new são as 
novas mensagens que você ainda nao leu. 
# O tmp está na cara o que é, né? :)
#

CAIXA=$1
  if [ "x$CAIXA" = "x" ]; then
    CAIXA="Inbox"
  fi

BASEDIR=~/Mail/
DIRETORIO=$BASEDIR/$CAIXA

if [ ! -d $DIRETORIO/new ]; then
    mkdir -p $DIRETORIO/new
  fi

  if [ ! -d $DIRETORIO/tmp ]; then
    mkdir -p $DIRETORIO/tmp
  fi

  if [ ! -d $DIRETORIO/cur ]; then
    mkdir -p $DIRETORIO/cur
  fi


DATA=`date +%Y%m%d%H%M%S`

#
# O diretorio "tmp" é usado para "montar" a mensagem e depois movê-la para o 
diretório apropriado.
# Isso impede que algum client leia a mensagem enquanto ela esta sendo montada 
(o que acontece quando salvamos direto no new).
#
# Adicionalmente, mantém o nome do arquivo temporário em uma variável
#
  ARQNAME=$DIRETORIO/tmp/msg.$DATA.$$.$RANDOM
  cat >> $ARQNAME

  ARQNAME1=/tmp/teste.txt
  cat  $ARQNAME > $ARQNAME1

#
# Exemplo de filtros
# Use sempre o comando "elif" (else + if) para os filtros, para que uma mesma 
mensagem não seja filtrada mais de uma vez.


 if [ `grep -i "List-Id: <debian-esperanto.lists.debian.org>" $ARQNAME | wc -l 
` -ne 0 ]; then sed s/"Subject:"/"Subject: [debian-users-eo] "/ $ARQNAME1 > 
$ARQNAME 
 fi

# sed s/"Subject:"/"Subject: [Recebido] "/ $ARQNAME1 > $ARQNAME 

#
if [ `grep -i "pgp-signed" $ARQNAME | wc -l ` -ne 0 ]; then mv -f $ARQNAME  
$BASEDIR/pgp/new/
#  elif [ `grep -i "[email protected]" $ARQNAME | grep -i "^From:" | wc -l ` 
-ne 0 ]; then
# Para adicionar mais filtros, basta copiar esse laco "elif" e mudar os "greps"
#    mv -f $ARQNAME $BASEDIR/Buddy/new/
elif [ `grep -i "pgp-encrypted" $ARQNAME | wc -l ` -ne 0 ]; then mv -f $ARQNAME 
 $BASEDIR/pgp/new/
else
#
# Se nao cair em nenhum filtro, mova do diretorio temporario para o "new"
#
    mv -f $ARQNAME $DIRETORIO/new/
fi


-- 

Gilberto F da Silva - [email protected] - ICQ 136.782.571
Stela dato:2.458.053,195  Loka tempo:2017-10-26 13:40:26 Ĵaŭdo    

Attachment: signature.asc
Description: PGP signature

Reply via email to