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 16:22 | IT novinky

CEO Intelu Brian Krzanich rezignoval (tisková zpráva). Oficiálním důvodem je "vztah na pracovišti". S okamžitou platností se dočasným CEO stal Robert Swan.

Ladislav Hagara | Komentářů: 14
dnes 14:11 | Komunita

Konsorcium Linux Foundation ve spolupráci s kariérním portálem Dice.com zveřejnilo 2018 Open Source Jobs Report. Poptávka po odbornících na open source neustále roste.

Ladislav Hagara | Komentářů: 1
dnes 12:44 | Zajímavý článek

Na stránkách linuxové distribuce Ubuntu Studio byla publikována příručka Ubuntu Studio Audio Handbook věnována vytváření, nahrávaní a úpravě zvuků a hudby nejenom v Ubuntu Studiu. Jedná se o živý dokument editovatelný na jejich wiki.

Ladislav Hagara | Komentářů: 0
dnes 12:11 | Zajímavý projekt

Společnost Red Hat koupila na konci ledna společnost CoreOS stojící mimo jiné za odlehčenou linuxovou distribucí optimalizovanou pro běh kontejnerů Container Linux. Matthew Miller, vedoucí projektu Fedora, představil v článku na Fedora Magazine nový podprojekt Fedory s názvem Fedora CoreOS. Fedora CoreOS má být to nejlepší z Container Linuxu a Fedora Atomic Hostu. Podrobnosti v často kladených otázkách (FAQ) a v diskusním fóru.

Ladislav Hagara | Komentářů: 0
dnes 08:00 | Nová verze

Po více než devíti měsících vývoje od vydání verze 11.0 byla vydána verze 12.0 zvukového serveru PulseAudio. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 10
včera 20:00 | Upozornění

Výbor pro právní záležitosti Evropského parlamentu (JURI) dnes přijal své stanovisko ke kontroverzní novele směrnice, která v EU upravuje autorské právo v online prostředí (Pro: 14, Proti: 9, Zdrželo se: 2). Další kolo legislativního procesu proběhne na začátku července.

Ladislav Hagara | Komentářů: 29
19.6. 19:55 | Zajímavý článek

Byly zveřejněny (pdf) podrobnosti o kritické bezpečnostní chybě CVE-2017-12542 v HPE iLO 4 (Integrated Lights-Out), tj. v proprietárním řešení společnosti Hewlett Packard Enterprise pro vzdálenou správu jejich serverů. Bezpečnostní chyba zneužitelná k obejití autentizace a k vzdálenému spuštění libovolného kódu byla opravena již v květnu loňského roku ve verzi 2.53.

Ladislav Hagara | Komentářů: 16
19.6. 17:55 | Zajímavý projekt

CSIRT.CZ informuje o CTF (Capture the Flag) platformě ZSIS CTF s úlohami pro procvičování praktických dovedností z oblasti kybernetické bezpečnosti a upozorňuje na soutěž Google Capture the Flag 2018, kde je možné vyhrát zajímavé ceny.

Ladislav Hagara | Komentářů: 0
19.6. 17:00 | Komunita

Byly zveřejněny prezentace a videozáznamy přednášek z prvního československého setkání síťových operátorů CSNOG konaného 11. a 12. června v Brně a semináře IPv6 2018 uskutečněného 6. června v Praze.

Ladislav Hagara | Komentářů: 0
19.6. 16:11 | Komunita

Svobodný unixový operační systém FreeBSD slaví 25 let. Přesně před pětadvaceti lety, tj. 19. června 1993, byl vybrán název FreeBSD.

Ladislav Hagara | Komentářů: 0
Jak čtete delší texty z webových stránek?
 (78%)
 (22%)
 (4%)
 (7%)
 (3%)
 (11%)
Celkem 236 hlasů
 Komentářů: 39, poslední dnes 17:44
    Rozcestník

    Dotaz: Davkove rozeslani vice ruznych mailu

    26.7.2007 13:28 jarhmylla
    Davkove rozeslani vice ruznych mailu
    Přečteno: 566×
    Dobry den, potreboval bych vyrobit skript, ktery by prosel dany adresar, k jednotlivym souborum nasel v urcitem souboru (adresy.txt) odpovidajici adresy a na ne odeslal mail, ke kteremu by privesil prislusny soubor.

    Doposud jsme pouzivali pro scriptove zasilani zprav mutt, system je centos 4.3.2.

    soubor s adresami adresy.txt:

    001 jenda@koza.com

    002 pavel@ovce.com

    .

    240 franta@jetel.com

    adresar s daty :

    001.txt

    002.txt

    .

    240.txt

    Soubor 001.txt by se mel jako priloha odeslat na adresu jenda@koza.com, atp.

    Diky za pomoc.

    Odpovědi

    andree avatar 26.7.2007 13:47 andree | skóre: 39 | blog: andreeeeelog
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu
    skus pouzit awk.. prejst vsetky riadky suboru adries a rozparsovat to na dvojice subor+email nebude problem, myslim ze ani zavolat `mail` na poslanie posty :-)
    26.7.2007 14:12 HS | skóre: 12
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu
    Dalo by se to take resit jednim cyklem while - ze souboru nactes radek, rozseknes ho na soubor a adresu a posles mail.
    26.7.2007 14:54 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu
    naco zakladat na jeden dotaz druhe vlakno kdyz uz jsi jedno vytvoril. tady mas skript ktery mi funguje:
    
    #!/bin/bash
    
    for file in /home/hates/maily/*; do
        FILE="$file"
        ID=`echo $file | cut -d "." -f 1-1 | cut -d "/" -f 5-5`
        MAIL=`grep ${ID} /home/hates/adresy.txt | cut -d " " -f 2-2`
        echo "Soubor $file odeslan na mail ${MAIL}"
        cat $file | mail ${MAIL}
    done;
    
    
    Staci malinko upravit pro tvoje potreby. mozna to jde i jednoduseji. pomoci awk primo rozparsovat ten radek v adresy.txt a potom odeslat prislusny soubor.
    27.7.2007 08:33 jarhmylla
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu

    Za druhe vlakno se velmi omlouvam, trochu se mi to nepovedlo, nebyl to umysl.


    Za skript velmi dekuji, po napasovani na moje podminky funguje velmi dobre. Mel bych jen dve poznamky.


    1) Potrebuji poslat soubor jako prilohu, nikoli jako telo mailu. Neco jako:
    mutt -s "soubor" -a $file $(MAIL) < default_message.txt
    coz mi zatim nefunguje, ale snad to nejak doladim. Pokud by jste vedel, rad se poucim.

    2)V puvodnim dotazu jsem nezminil moznost, ze pocet souboru nemusi korespondovat s poctem adres. Dalo by se to jeste zohlednit?


    Diky.

    27.7.2007 10:02 hates | skóre: 30 | blog: Jak_jsem_se_dostal_k_linuxu
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu
    Tohle odesila mail i s prilohou. musis na to vyuzit mutt. prikaz mail nejspis neumi prilohy. Nezalezi na tom ze nekoresponduje pocet adres a souboru. skript prochazi adresar a ke kazdemu jmenu hleda v souboru adresy.txt adresu. pokud neexistuje tak to zaloguje a pokracuje dal. A ted uz ten skript:
    #!/bin/bash
    
    # soubor s obsahem mailu musi byt ve tvaru
    # <jmeno>.<pripona>
    
    SOUBOR_ADRES="/home/hates/adresy.txt"
    
    SUBJECT="Automaticky odesilany mail"
    
    echo `date +%c` >> /home/hates/neodeslane_maily.txt
    for file in /home/hates/maily/*; do
        FILE="$file"
        ID=`echo $file | cut -d "." -f 1-1 | cut -d "/" -f 5-5`
        MAIL=`grep ${ID} ${SOUBOR_ADRES} | cut -d " " -f 2-2`
        if [ -z ${MAIL} ]; then
            echo "Soubor $file nebyl odeslan. Adresa s ID ${ID} neexistuje" << /home/hates/neodeslane_maily.txt
        else
            echo "Soubor $file odeslan na mail ${MAIL}"
            echo "Odeslan mail s ID ${ID}" | mutt -s "${SUBJECT}" -a $file ${MAIL} > $file
        fi
    done;
    
    27.7.2007 10:53 jarhmylla
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu
    Bylo by to presne ono, kdyby to stale nehlasilo:

    ./mailista: line 22: syntax error: unexpected end of file
    27.7.2007 11:02 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu
    Bylo by určitě lepší odeslat soubory v _jednom_ mailu spíš než každý soubor odesílat zvlášť. Krom toho je v tom zadání pár nejednoznačností a jestli chceš řešení, ozvi se mi na jabber, bude to rychlejší a dáme sem pak výsledek. Prozatím tohle
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    import os
    
    adresy = {}
    for line in file('adresy.txt'):
        f, addr = line.split()
        filename = f + '.txt'
        try:
            if filename not in adresy[addr]:
                adresy[addr].append(filename)
            else:
                print "Duplicit line", filename, addr
        except KeyError:
            adresy[addr] = [filename]
    
    for adresa, soubory in adresy.iteritems():
        att = '-a ' + ' -a '.join(soubory)
        print 'mutt -s "Rozeslane soubory"', adresa, att
    
    projde seznam adres, zjistí co komu poslat, oznámí duplicity a nachystá příkaz pro odeslání. Třeba z tohohle:
    001 jenda@koza.com
    002 pavel@ovce.com
    230 franta@jetel.com 
    003 pavel@ovce.com
    240 franta@jetel.com 
    200 franta@jetel.com 
    240 franta@jetel.com 
    
    Udělá toto:
    Duplicit line 240.txt franta@jetel.com
    mutt -s "Rozeslane soubory" jenda@koza.com -a 001.txt
    mutt -s "Rozeslane soubory" pavel@ovce.com -a 002.txt -a 003.txt
    mutt -s "Rozeslane soubory" franta@jetel.com -a 230.txt -a 240.txt -a 200.txt
    
    27.7.2007 13:29 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Davkove rozeslani vice ruznych mailu
    Společnými silami jsme vytvořili tenhle skript:
    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    import os
    
    subject = 'rozeslane soubory'
    body = 'Rozeslane soubory\n'
    datadir = '/home/honza/datadir'
    
    def posli(adresa, soubory):    
        cmd = ['mutt', '-s', subject]
        for soubor in soubory:
            cmd.extend(('-a', os.path.join(datadir, soubor)))
        cmd.append(adresa)
        print cmd
        #w, r = os.popen2(cmd)
        #w.write(body)
        #w.close()
    
    
    adresy = {}
    souborynadisku = dict([(x, None) for x in os.listdir(datadir)])
    souboryvadresach = {}
    for linenum, line in enumerate(file('adresy.txt')):
        try:
            f, addr = line.split()
        except:
            print 'radek %d: "%s" je divny' %(linenum, line.strip())
            continue
        filename = f + '.txt'
        souboryvadresach[filename] = None
        if filename not in souborynadisku:
            print 'radek %d: soubor "%s" chybi' %(linenum, filename)
            continue
        try:
            adresy[addr].append(filename)
        except KeyError:
            adresy[addr] = [filename]
    
    for snd in souborynadisku:
        if snd not in souboryvadresach:
            print 'Soubor "%s" neni komu poslat' %snd
    
    adr = adresy.keys()
    adr.sort()
    for adresa in adr:
        soubory = adresy[adresa]
        posli(adresa, soubory)
    
    Ukázalo se, že je potřeba odchytit co nejvíc chybových situací (divné řádky, chybějící soubory, přebývající soubory), tak se to trochu nafouklo a na efektivitu jsem pak už přestal hledět. Ale prý to funguje ;-)

    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.