Home

"I'm brave but I'm chicken shit"

Inviare mail da riga di comando

Ogni tanto capita di imbattersi in piccole perle che semplificano il lavoro e risolvono i problemi in modo elegante.
E’ il caso di Blat, una utility che, in soli 36k, è in grado di inviare mail da riga di comando.
L’ho scoperto stamane, mentre cercavo qualcosa che mi spedisse giornalmente i backup log di un cliente.
L’utilizzo è semplicissimo: va inizializzato la prima volta, per settare il profilo nel registry, con il comando:
blat -install smtpserver userid
quindi si può inviare una mail con la sintassi:
blat corpo.txt -subject "Oggetto della mail" -to [email protected]
Questo comando crea una mail estraendo il corpo dal file, ed imposta l’oggetto ed il destinatario.
Ci sono diversi switch che ne permettono l’utilizzo avanzato, ad esempio è supportata l’autenticazione e diversi tipi di codifica degli allegati binari.
Io ho usato la versione 1.94, ma ne esiste una versione più recente, la 2.50.
Ecco un esempio di un batch che ho creato (sono 6 righe, togliete i numeri di riga):
1) @echo off
2) set logpath=d:\back_log\
3) set logfilename=logbackup-%date:~6,4%-%date:~3,2%-%date:~0,2%.txt
4) set logdestination=%logpath%%logfilename%
5) robocopy d:\ f:\dati\lunedi\ /XA:S /MIR /SEC /NP /R:3 /W:10 /LOG+:%logdestination%
6) blat %logpath%%logfilename% -base64 -subject "Backup Dati ACME"%date:~6,4%-%date:~3,2%-%date:~0,2% -to [email protected],[email protected] -server smtp.server.net -u [email protected] -pw segreto


Pubblicato

in

da

Tag:

Commenti

21 risposte a “Inviare mail da riga di comando”

  1. Avatar silentman

    Uso blat con soddisfazione per mandare le designazioni agli arbitri via email in modo automatico da excel (e il buon vecchio gnokii per mandarle via sms)…

    Mi piacerebbe fare il porting del foglio che uso per gestire tutta la baracca su OpenOffice, per avere una soluzione totalmente portabile, se non fosse che e’ un lavoro TITANICO, risultato di due anni di migliorie e tuning…. ma questo e’ un’altro discorso 🙂

  2. Avatar silentman

    Per completezza, precedentemente usavo BMail, che pure e’ funzionale, ma molto meno flessibile di Blat.

  3. Avatar Tambu

    mi sto picchiando con un problema simile: sai mica come scriptare la data per fargli prendere quella di ieri (e vantieri e il giorno prima, of course)?
    %date%-1 non funziona

  4. Avatar fmf

    Io pure l’ho scoperto da poco e lo uso assieme ad un altro bel tool: abakt che fa backup da linea di comando.
    Un batch che chiama abakt e mi manda in mail l’eventuale risultato negativo del backup messo in c:\windows\system32\grouppolicy\user\scripts\logoff et voila’: backup automagici con rotazione settimanale ogni volta che spengo il pc.
    Forse che ne avevi parlato tu di abakt?
    O degli script di logoff di windows?
    Boh…

  5. Avatar Andy

    Ma il vecchio telnet? 😀

  6. Avatar Andrea

    Andy, capisco essere nerd. Ma complicarsi la vita apposta….

  7. Avatar dandyna

    oh beggiiii non ti manco neanche un po’??

  8. Avatar Andrea

    Ma certo, cara. Sei tu che ora fai la webmistress e non caghi più nessuno….

  9. Avatar virgix

    Ottimo! Farò un collegamento per gli utenti, così quando telefonano per un problema possano spedirmi subito la copia dei loro dati – evitando il solito penoso “mi mandi via mail…” – e giù spiegazioni di quali files mi servono e della loro posizione.

    Perchè purtroppo spesso gli amministratori di rete l’accesso esterno non te lo vogliono proprio dare!

  10. Avatar dandyna

    non è vero non è vero non è verooooooo!!!! anzi te mi devi aiutare. la vedi la descrizione sotto il titolo di dandyland? prima stava nella parte nera ora mi è scesa improvvisamente e mi va sopra la barra gialla e non si legge nulla, che devo fà!

  11. Avatar davidonzo

    dandy, fai la webmastra senza saper controllare i div? ^_^”

    .description{
    /*Aggiunta*/
    margin-top: -5px /*o quello che serve…*/;
    /*fine aggiunta*/
    padding: 0 6px;
    font-family: Georgia,Arial;
    font-size: 11px;
    color: #777;
    }

  12. Avatar dandyna

    ganzoooooooo grazie

  13. Avatar Marco
    Marco

    Scusate, io ho la tua stessa necessità, cioè ricevere dei log automaticamente, ma prima di inviare la mail, come faccio ad eseguire l’accesso ad internet via modem???
    Grazie a chiunque possa aiutarmi.

  14. Avatar Nando
    Nando

    Per controllare l’accesso remoto puoi usare il comando rasdial (presente da win2k in poi).
    Dai rasdial /? e vedi le opzioni da usare per connetterti e disconnetterti.
    Per Win9x c’è in giro un semplice ma efficace programmino che emula il comportamento di rasdial e che si chiama rasdial95.exe. Cerca con google e vedrai che lo trovi.

  15. Avatar cristian
    cristian

    scusate, da quanto vi risulta quando scrivo il comando:
    blat -install smtpserver userid
    occorre inserire smtp qualunque o ne serve uno specifico? no perchè fin’ora a me le mail sono partite solo cn virgilio (smtp: blat install out virgilio.it….) se provo altri server non funzionano.. come mai secondo voi?

  16. Avatar francesco tartarini

    ciao , sei veramente bravo ,
    voglio mandare un po di mail 10 o 20 insieme
    (no span, sono daccordo) se no divento cretino a
    scriverne uno per volta
    sono appoggiato ad aruba con cui ho anche il dominio
    il mio sito e’ esclusivamente calcistico se ti interessa
    scusa il server che devo mettere quale e’ (aruba ?)
    o posso usare uno a caso
    il destinatario ha bisogno di un mittente ?

  17. Avatar antonello
    antonello

    Scusate,

    avrei la necessità d’inviare ad una lista di destinatari una mail con un allegato diverso per ciascun destinatario.

    Ho una tabella così strutturata:

    destinatario email file da allegare
    pippo [email protected] \\indass\pippo.xls

    Secondo voi è possibile utilizzare blat per inviare i file con unica riga di comando? O è necessario scrivere più righe, una per ciascun destinatario?
    Onestamente ho guardato la documentazione di blat, ma il grado di comprensione è vicino allo zero.

    Grazie
    Antonello

  18. Avatar Paolo

    Aggiungo che non è indispensabile inserire la pass se punti direttamente al tuo smtp mail server…

  19. Avatar Tiziano
    Tiziano

    Ciao a tutti. Non so perché ma quando tento di configurare :

    C:\WINDOWS\system32>blat -install smtp.libero.it [email protected]
    Blat v3.0.0 w/GSS encryption (build : Feb 17 2012 17:46:41)

    SMTP server set to smtp.libero.it on port 25 with user [email protected], retry
    1 time(s)

    C:\WINDOWS\system32> blat.exe – -to [email protected] -subject “ogg” -body “corpo”
    Blat v3.0.0 w/GSS encryption (build : Feb 17 2012 17:46:41)

    Error: Can’t connect to server (timed out if winsock.dll error 10060)

    Potete darmi una mano? con linux non ho problemi (con sendmail) ma onestamente qui non capisco, ho provato altri server ma è la stessa cosa. Grazie mille.

  20. Avatar Danilo
    Danilo

    Ciao a tutti! Sapete dirmi se è possibile, attraverso Blat o altri software, fare scattare uno screenshot del PC e farlo inviare via email?
    Grazie!
    Danilo