abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 02:00 | Zajímavý článek

    Jiří Eischmann se v příspěvku Fiasko jménem W Social na svém blogu věnuje evropské sociální síti W: "W Social je příkladem toho, že se problémy sociální sítí nedají řešit od exekutivního stolu. Když na začátku tohoto roku v Davosu oznámili vznik nové sociální sítě W Social, politici se mohli přetrhnout ve chvalozpěvech. Konečně evropská sociální síť a ještě s ověřením identity. … Jak se ukázalo, když v Davosu W Social oznamovali, neměli kromě

    … více »
    Ladislav Hagara | Komentářů: 11
    včera 18:00 | Bezpečnostní upozornění

    Výrobce hardwarových kryptoměnových peněženek Trezor upozorňuje na bezpečnostní incident u společnosti Brevo, kterou využívá k odesílání newsletterů. Útočník na e-mailové adresy odeslal phishingový e-mail.

    Ladislav Hagara | Komentářů: 1
    včera 14:33 | Komunita

    Clement "Clem" Lefebvre publikoval souhrn dění v Linux Mintu za srpen 2026. Aplikace XApp mají vlastní webovou stránku xapp-project.org. Představena byl čtečka EPUB s názvem Xepub a kalendář Clockenstein.

    Ladislav Hagara | Komentářů: 0
    včera 11:44 | Nová verze

    Byla vydána nová verze 3.2.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 11:33 | Nová verze

    Bylo vydáno Ubuntu 24.04.5 LTS, tj. páté opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Komunita

    Švýcarsko testuje přechod z Microsoft 365 na FOSS, konkrétně balík openDesk (Wikipedie) od německé státní společnosti ZenDiS (Wikipedie), s cílem posílit digitální suverenitu.

    Ladislav Hagara | Komentářů: 9
    včera 04:22 | Komunita

    V italském městě Pordenone probíhá LibreOffice Conference 2026. Zúčastnit se lze i online.

    Ladislav Hagara | Komentářů: 0
    10.9. 18:33 | Nová verze

    Svobodný (GPLv3) šachový engine Stockfish (Wikipedie) byl vydán ve verzi 19 (𝕏). Přehled novinek v příspěvku na blogu. Stockfish 19 je o 44 Elo silnější než Stockfish 18.

    Ladislav Hagara | Komentářů: 0
    10.9. 12:33 | Nová verze

    Byla vydána nová verze 1.13.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 0
    10.9. 11:11 | Pozvánky

    Organizátoři konference LinuxDays zveřejnili program letošního ročníku a spustili registraci návštěvníků. LinuxDays 2026 se uskuteční 3. a 4. října v areálu ČVUT v pražských Dejvicích, na Fakultě informačních technologií. Těšit se můžete na 70 přednášek a workshopů od 66 přednášejících. Konference bude rozdělena do pěti sálů s různou kapacitou. Vstup na LinuxDays je jako obvykle zdarma, stačí včas vyplnit registrační formulář. Opět je možné si na akci zakoupit oběd, ale je třeba to udělat předem, na místě už to nebude možné.

    Petr Krčmář | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (4%)
     (21%)
     (29%)
     (7%)
     (5%)
     (2%)
     (14%)
     (21%)
    Celkem 2651 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: perl - vytažení těla emailu

    3.1.2008 23:22 motorcb | skóre: 12
    perl - vytažení těla emailu
    Přečteno: 732×
    Zdravím. Mam emaily v souborech a potreboval bych z techto souboru vytahnout subject a body toho emailu.Ukazkovy email:

    
    Return-Path: <www-data@xxx.cz>
    Delivered-To: bad-header-quarantine
    X-Envelope-From: <www-data@xxx.cz>
    X-Envelope-To: <info@xxx.eu>
    X-Quarantine-ID: <5x5tiQaaevhN>
    X-Amavis-Alert: BAD HEADER Non-encoded 8-bit data (char E1 hex): Subject:
    	Rozd\341v\341me pen\355ze!\n
    Received: from yyy.xxx.cz ([127.0.0.1])
    	by localhost (yyy.xxx.cz [127.0.0.1]) (amavisd-new, port 10024)
    	with ESMTP id 5x5tiQaaevhN for <info@xxx.eu>
    	Sun,  9 Dec 2007 08:26:27 +0100 (CET)
    Received: from apache.xxx.cz (apache.superhosting.cz [88.86.xxx.xxx])
    	by mx1.xxx.cz (Postfix) with ESMTP id 766CEB7BE8
    	for <info@xxx.eu> Sun,  9 Dec 2007 08:26:27 +0100 (CET)
    Received: by apache.xxx.cz (Postfix, from userid 33)
    	id 7D3A99C36B; Sun,  9 Dec 2007 08:25:02 +0100 (CET)
    To: info@xxx.eu
    Subject: tohel je subject
    From: info@xxx.cz
    X-Mailer: PHP
    X-Priority: 1
    Content-Type: text/html; charset=windows-1250
    Message-Id: <20071209072502.7D3A99C36B@apache.xxx.cz>
    Date: Sun,  9 Dec 2007 08:25:02 +0100 (CET)
    
    
    Toto je text,tery potrebuju vytahnout do perlu
    bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla 
    
    

    Dokazal by někdo poradit jak na to?

    Odpovědi

    wamba avatar 4.1.2008 01:05 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu
    Třeba mě napadá: perl -00 -e 'print $1,"\n" if <>=~/^Subject:(.*)$/m;print while <>;'
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    4.1.2008 08:01 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu
    # xyz.pl
    use Mail::Audit;
    
    my $mail = new Mail::Audit;
    
    print "Subject: ", $mail->subject, "\n";
    print "Body: ", $mail->body, "\n";
    
    Použitie:
    perl xyz.pl file
    4.1.2008 08:55 ph0enix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu

    A co treba nasledujici (neodzkouseno). Vyzaduje soubor s maily jako parametr

    #!/usr/bin/perl -w
    
    my $filename = shift @ARGV;
    if (!$filename || -r $filename) {
        die "Nelze cist soubor s maily";
    }
    
    my $mgr      = Mail::Box::Manager->new;
    my $folder   = $mgr->open($filename);
    foreach my $message ($folder->messages) {
        print $message->get('Subject') || '<no subject>', "\n";
        print $message->string || '<no body>', "\n\n";
    }
    $folder->close;
    
    4.1.2008 09:11 ph0enix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu

    Ani jsem si to po sobe neprecetl :-( Chybi mi tam use pro modul Mail::Box::Manager, takze jeste jednou a s kontrolou chyb.

    #!/usr/bin/perl -w
    
    use Mail::Box::Manager;
    
    if (@ARGV != 1) {
        die "Usage: $0 soubor_se_zpravami\n";
    }
    
    my $filename = shift @ARGV;
    if (! -r $filename) {
        die "Nelze cist soubor se zpravami";
    }
    
    my $mgr    = Mail::Box::Manager->new;
    my $folder = $mgr->open($filename);
    
    if (! defined $folder) {
        die "Nelze cist soubor se zpravami: $!";
    }
    
    foreach my $message ($folder->messages) {
        print $message->get('Subject') || '<no subject>', "\n";
        print $message->string || '<no body>', "\n\n";
    }
    $folder->close;
    6.1.2008 22:26 motorcb | skóre: 12
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu
    Zdarvim.Zkousel jsem tento kod,ale bohuzel nevypisuje vubec nic :( delli:~/perl/# ./mail.pl emaily delli:~/perl/#

    Nevite nekdo prosim proc?
    7.1.2008 10:00 ph0enix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu
    Nevim a bohuzel nemam k dispozici zadna data na kterych bych to vyzkousel :-(
    7.1.2008 11:51 motorcb | skóre: 12
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu
    
    Return-Path: <www-data@xxx.cz>
    Delivered-To: bad-header-quarantine
    X-Envelope-From: <www-data@xxx.cz>
    
    X-Envelope-To: <info@xxx.eu>
    X-Quarantine-ID: <5x5tiQaaevhN>
    X-Amavis-Alert: BAD HEADER Non-encoded 8-bit data (char E1 hex): Subject:
    	Rozd\341v\341me pen\355ze!\n
    Received: from yyy.xxx.cz ([127.0.0.1])
    	by localhost (yyy.xxx.cz [127.0.0.1]) (amavisd-new, port 10024)
    	with ESMTP id 5x5tiQaaevhN for <info@xxx.eu>
    	Sun,  9 Dec 2007 08:26:27 +0100 (CET)
    Received: from apache.xxx.cz (apache.superhosting.cz [88.86.xxx.xxx])
    	by mx1.xxx.cz (Postfix) with ESMTP id 766CEB7BE8
    	for <info@xxx.eu> Sun,  9 Dec 2007 08:26:27 +0100 (CET)
    Received: by apache.xxx.cz (Postfix, from userid 33)
    	id 7D3A99C36B; Sun,  9 Dec 2007 08:25:02 +0100 (CET)
    To: info@xxx.eu
    Subject: tohel je subject
    From: info@xxx.cz
    X-Mailer: PHP
    X-Priority: 1
    Content-Type: text/html; charset=windows-1250
    Message-Id: <20071209072502.7D3A99C36B@apache.xxx.cz>
    Date: Sun,  9 Dec 2007 08:25:02 +0100 (CET)
    
    
    Toto je text,tery potrebuju vytahnout do perlu
    bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla 
    
    
    
    11.1.2008 16:54 ph0enix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: perl - vytažení těla emailu

    Hmmm, opravdu to nefunguje a navic mam v cygwinu nejake problemy se zamykanim / mazanim souboru. Zkus tento kod. Tentokrat jsem si to i vyzkousel, takze by mel chodit. Pouziti je: perl ./script.pl email. Predpoklada jeden email v jednom souboru. Je zapotrebi minimalne modul Mail::Box - pokud nemas, nainstalujes pres balickovaci system tve distribuce ci primo z CPANu.

    use strict;
    use Mail::Box::Parser::Perl;
    
    sub get_subject {
        my $parser = shift;
        my ($where, @header) = $parser->readHeader;
        my $result;
    
        for (my $i = 1; $i < @header; $i++) {
            if ($header[$i][0] =~ /^Subject$/i) {
                $result = $header[$i][1];
                chomp $result;
            }
        }
    
        return $result;
    }
    
    sub get_body {
        my $parser = shift;
        my ($start, $stop, $content) = $parser->bodyAsString();
    
        return $content;
    }
    
    my $filename;
    my $mbp;
    my $subj;
    my $body;
    
    $filename = shift @ARGV;
    
    if (!$filename) {
        die "Missing param - filename";
    }
    
    $mbp = Mail::Box::Parser::Perl->new(filename => $filename);
    $mbp->start();
    
    $subj = get_subject($mbp);
    $body = get_body($mbp);
    
    print 'SUBJ: ', $subj ? $subj : '<no subject>', "\n";
    print 'BODY: ', $body ? $body : '<no body>', "\n";
    
    $mbp->stop();
    
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.