Pagina 1 di 1

bash + telnet per leggere la mail di slacky

Inviato: mar 26 giu 2007, 21:00
da danix
Ciao a tutti,
IMPORTANTE PREMESSA:
Non voglio reinventare la ruota, so che ci sono almeno altri 1000 modi per fare più agevolmente quello che io voglio fare con lo script che andrò a creare, il mio interesse però è imparare, e creare qualcosa di utile ai miei scopi con i mezzi che Slackware mi mette a disposizione mi sembra un buon modo... A qualcuno potrà sembrare una perdita di tempo, ma per me è un'occasione per migliorare...
/IMPORTANTE PREMESSA

come promesso apro il thread in cui proverò a riportare la mia frustrazione durante la creazione di uno script che automaticamente si preoccupi di andare sul server mail di slacky e controllare per me se c'è posta in arrivo non letta...

Ho googlato un po sull'argomento e voglio che sia chiaro che quel poco che sono riuscito a tirare fuori non è per nulla farina del mio sacco...

Cominciamo, per iniziare ho provato in maniera interattiva a collegarmi al server di posta e tutto è andato bene...

Codice: Seleziona tutto

telnet pop3.slacky.it 110
Il server mi ha risposto così:

Codice: Seleziona tutto

Trying 62.149.128.155...
Connected to pop3.slacky.it.
Escape character is '^]'.
+OK <7661.1182882695@popd7.fe.aruba.it>
e poi mi ha restituito il prompt per poter inviare un nuovo comando, e io ho inviato:

Codice: Seleziona tutto

USER miouser
Il server ha risposto:

Codice: Seleziona tutto

+OK
poi ho inviato:

Codice: Seleziona tutto

PASS miapassword
e il server ha risposto di nuovo:

Codice: Seleziona tutto

+OK
da qui essendo io connesso e autenticato al server posso dare il comando LIST per vedere quanti messaggi ho e poi il comando RETR n (dove n è il numero del messaggio che voglio leggere) per leggere quel messaggio, poi dando il comando QUIT esco tranquillamente...
Fin quì tutto ok, ma siamo in modalità interattiva, quello che voglio io è automatizzare il processo, so che basta dare una serie di echo per accedere, ma lo script che avevo in mente dovrebbe agire di conseguenza alle risposte del server, può sempre capitare che il server per qualche motivo mi risponda con un -ERR invece che con +OK, e vorrei evitare di lasciare il processo in sospeso all'infinito se ciò dovesse accadere... inoltre vorrei capire se posso redirigere l'output di telnet in una variabile bash per poterci operare come voglio io (ad esempio con wc per sapere quanta posta c'è...)

Qualcuno di voi ha qualche suggerimento in merito da darmi??

Grazie mille a tutti

Re: bash + telnet per leggere la mail di slacky

Inviato: mar 26 giu 2007, 23:01
da masalapianta
danix85 ha scritto: Qualcuno di voi ha qualche suggerimento in merito da darmi??
non usare lo shell scripting e se proprio devi procurati una bash compilata con --enable-net-redirections e datti una letta a http://www.pluto.it/files/ildp/guide/ab ... ml#DEVREF1

Inviato: mer 27 giu 2007, 1:09
da danix
ciao masalapianta, ti posso chiedere come mai mi sconsigli di usare lo shell scripting?? Ovviamente nessuno mi obbliga, volevo semplicemente cimentarmi in questa cosa...

Grazie mille per avermi risposto...

Inviato: mer 27 giu 2007, 1:24
da masalapianta
danix85 ha scritto:ciao masalapianta, ti posso chiedere come mai mi sconsigli di usare lo shell scripting??
perche' non e' pensato per fare ste cose (come ad esempio scrivere un client di rete), quindi risulta molto piu' semplice usare altri strumenti (ad esempio io userei perl+Mail::POP3Client)

Inviato: mer 27 giu 2007, 1:29
da danix
ok, allora rispolvero la reference di python (l'unico linguaggio che conosco abbastanza...) e lo faccio così lo script (perl ancora non lo conosco...)

Grazie mille per le delucidazioni...