Newsgroup: it.comp.os.linux.software
Titolo: cancellare la posta

Ho bisogno di cancellare periodicamente la mia posta da un server
pop3. Naturalmente vorrei farlo con un script o se e` possibile
con fetchmail, anche se non mi e` sembrato che il manuale
prevedesse la stesa cosa. E' inutile dire che non voglio
scaricarla, ma solo cancellarla.
A presto,
   Nuccio
 ---
You can find me at:
 e-mail: 
xywznucci...@usa.net
  REMOVE XYWZ FROM MY ADDRESS
 ICQ# 64759760

scaricarla, ma solo cancellarla.
Si fa bene (tra gli altri possibili modi) in Perl:
    use Net::POP3;
    $pop = Net::POP3->new('tuo.server.pop3') or die;
    $pop->user('utente') or die;
    $pop->pass('******') or die;
    $lsmsg = $pop->uidl();
    foreach $msg (%{$lsmsg}) {
        print "Cancello: ", $msg, "\t", $lsmsg->{$msg}, "\n";
        $pop->delete($msg);
    }
    $pop->quit();
Questo cancella indiscriminatamente tutti i messaggi presenti nella
casella.
Eventualmente, se il tuo client di posta usa UIDL, puoi basarti sul
precedente ritiro, e cancellare solo quelli che hai gia` prelevato e che
trovi elencati in un file da qualche parte.
Quest'ultima operazione la fa anche automaticamente fetchmail, con non mi
ricordo piu` che opzione. Pero`, in modo non molto sicuro. Se qualcosa e`
andato storto nella connessione precedente, ti puo` capitare di avere
l'UIDL, ma non tutti i messaggi relativi, e quindi cancellare della roba
che di fatto non hai; questo e` vero anche facendo l'operazione a mano,
naturalmente, ma tu dovresti essere piu` accorto di fetchmail.
Te lo fa poi anche periodicamente il tuo fornitore, naturalmente, senza che
tu muova un dito; ma se hai molto traffico potrebbe in effetti non essere
sufficiente.
Ciao.

 scaricarla, ma solo cancellarla.
Usa netcat e telnet, Luke..
-- 
Pierluigi De Rosa (
tho...@durin.khazad-dum.net
).
<<      LINUX: the choice of a GNU generation     >>
<<   For my real address... ask the Balrog.       >>
* Sostenete la Lega per la Soppressione dei Troll *

    foreach $msg (%{$lsmsg}) {
Ma senz'altro!! (accidenti ai taglia e incolla!)
Facciamo cosi`, che e` meglio:
    foreach $msg (keys %{$lsmsg}) {
    ...
Ciao.

Giovanni Zezza ha scritto:
Intanto ti ringrazio. Ho provato la tua soluzione, ma non sapendo
nulla di perl, il mio e` stato un copiato. Ottengo questo errore
che credo vada risolto scaricando qualcosa o indicando un
percorso:
Can't locate Net/POP3.pm in @INC (@INC contains:
/usr/lib/perl5/5.00503/i386-linux /usr/lib/perl5/5.00503
/usr/lib/perl5/site_perl/5.005/i386-linux
/usr/lib/perl5/site_perl/5.005 .) at ./pop3del line 2.
BEGIN failed--compilation aborted at ./pop3del line 2. 


 Usa netcat e telnet, Luke..
Ho scaricato netcat. Provero` anche la tua soluzione perche', se
ho ben capito, simulando una cancellazione a mano con telnet mi
sembra interessante.


 sembra interessante.
Infatti netcat e' un tool veramente interessante, apre le porte a nuovi
"attizzanti" mondi dalle applicazioni infinite (pensa al divertimento di
bombare le porte ai deficienti di BO pingers...)


BEGIN failed--compilation aborted at ./pop3del line 2. 
Si`, ti ci vuole il pacchetto libnet, che contiene il modulo POP3. Lo trovi
su CPAN (il circuito di distribuzione di Perl). Comincia da 
www.perl.org
 e
segui i cartelli. SE vuoi usare Perl. A me viene sempre in mente Perl per
una mia personale deformazione, ma ci sono senz'altro altri modi
altrettanto validi.
Ciao.

 bombare le porte ai deficienti di BO pingers...)
La man page e` sufficiente o mi devo scaricare qualche documento?


 altrettanto validi.
OK. Scaricato. Se ho problemi a istallarlo ca$$i tuoi :)


bombare le porte ai deficienti di BO pingers...)
uhm, sento il mio lato sadico e perverso venire a galla ... ;-)

 La man page e` sufficiente o mi devo scaricare qualche documento?
No, non c'e' neanche la man page, figurati :-) Sono si e no quattro
switch in croce...
