Domanda

Vorrei sapere se esiste un modo semplice per stampare più e-mail (circa 200) in modo che continuino invece di stamparne una per pagina. Ho provato con thunderbird ed evoluzione e questo non sembra possibile. Concatenando i singoli file di posta funzionerebbe o ci sono altre utility unix che potrebbero farlo? Sed o awk potrebbero essere adatti a questo?

È stato utile?

Soluzione

Perché non metti tutti i dati delle e-mail in un file di testo e stampa quello.

Questo potrebbe essere fatto con qualcosa del tipo:

cat *.eml > file.txt

O stampalo direttamente con

cat *.eml | lpr

Altri suggerimenti

Perl rende abbastanza facile con Email :: Modulo astratto . Dai al seguente script (maildump) un elenco di e-mail da scaricare e poi reindirizza tutto in lpr ...

maildump m1 m2 m3 m4 | lpr

#!/usr/bin/perl

use Email::Abstract;

while ($mfile = shift @ARGV)
{
    open(DATA, "<$mfile") || die "unable to open $mfile";

    my $message = do { local $/; <DATA>; };

    my $email = Email::Abstract->new($message);

    my $subject = $email->get_header("Subject");
    my $from = $email->get_header("From");
    my $date = $email->get_header("Date");
    my $body = $email->get_body;

    print "SUBJECT: $subject\nFROM: $from\nDATE: $date\n\n$body\n\n";
    print "-" x 65, "\n" if $#ARGV > 0;
}

Posso dire con certezza su * n * x, ma se è possibile definire una stampante che emette solo testo e che verrà emessa in un file di testo, è possibile stampare il batch su quella stampante e rimuovere il modulo -feed dal file di testo risultante.

Ho usato una tecnica simile in Windows: creare una nuova stampante utilizzando il driver generico / solo testo e specificare che l'output è in un file di testo. Quindi stampa qualunque cosa, dai la posizione del file di output alla finestra di dialogo di stampa e ripulisci il risultato al termine della stampa.

Se desideri filtrare le e-mail, ti suggerisco di trovare dove sono archiviati i dati e di creare una soluzione di scripting a quel livello.

Nella mia finestra di Windows, Thunderbird memorizza la mia Posta in arrivo in un file ish piuttosto grande in

  

C: \ Documents and Settings \ Bruce Axtens \ Application Data \ Thunderbird \ Profiles \ x5j9chtd.default \ Mail \ Local Folders \ Inbox

Non so dove * n * x memorizzi i tuoi: forse in una cartella nascosta nella tua directory principale. Per es.

  

/home/josh/.thunderbird

L'analisi dei dati di posta elettronica non elaborati non è per i deboli di cuore (anche se Wikipedia ha un buon articolo su e-mail che ti farebbe iniziare nella giusta direzione.)

Per il resto di noi (me incluso), ci sono molte risorse di script per fare il lavoro di hacking per te, mentre crei la tua soluzione. Se trovato questo come un buon punto di partenza per Perl. Altri potrebbero essere in grado di suggerire librerie per altre lingue.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top