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í
×
včera 17:35 | Bezpečnostní upozornění

Německá Bundesnetzagentur (obdoba českého ČTU) zakázala na německém území prodej panenky Cayla kvůli „špionáži“ dětí. Tato elektronická hračka obsahuje mikrofon, reproduktor a kameru a bezdrátové komunikační rozhraní, pomocí kterého se hračka připojuje na servery výrobce. Takovýmto způsobem může hračka pomocí umělé inteligence „odpovídat“ na dotazy dítěte. Hlavní problém bude ale asi někde jinde, podle prvotních zpráv může

… více »
Petr Tomášek | Komentářů: 18
17.2. 15:30 | Bezpečnostní upozornění

CSIRT.CZ upozorňuje, že bezpečnostní experti objevili nový typ malwaru, jenž cílí na open source e-commerce platformu Magento. Malware je zajímavý tím, že se jedná o první svého druhu, jehož kód zůstává skrytý v SQL databázi zasaženého e-shopu. Škodlivý kód je volán pomocí tzv. SQL trigerru, který je spouštěn při každém vytvoření objednávky v systému.

Ladislav Hagara | Komentářů: 0
17.2. 09:00 | Nová verze

Bylo vydáno Ubuntu 16.04.2 LTS, tj. druhé opravné vydání Ubuntu 16.04 LTS s kódovým názvem Xenial Xerus. Přehled novinek v poznámkách k vydání a v přehledu změn.

Ladislav Hagara | Komentářů: 37
17.2. 06:00 | Zajímavý článek

Pavel Tišnovský se v dvoudílném článku na MojeFedora.cz věnuje tvorbě pluginů (modulů) pro bitmapový grafický editor GIMP. Pomocí pluginů lze GIMP rozšiřovat o další funkce. Implementovat lze například nové filtry nebo pomocné utility pro tvorbu animací či poloautomatickou retuš snímků.

Ladislav Hagara | Komentářů: 6
16.2. 23:32 | Komunita

Do 30. března se lze přihlásit do dalšího kola programu Outreachy, jehož cílem je přitáhnout do světa svobodného a otevřeného softwaru lidi ze skupin, jež jsou ve světě svobodného a otevřeného softwaru málo zastoupeny. Za 3 měsíce práce, od 30. května do 30. srpna 2017, v participujících organizacích lze vydělat 5 500 USD. Jedná se již o 14. kolo tohoto programu.

Ladislav Hagara | Komentářů: 11
16.2. 23:13 | Nová verze

Byla vydána verze 0.92.1 svobodného multiplatformního vektorového grafického editoru Inkscape. Přehled novinek v poznámkách k vydání. Řešen je mimo jiné problém s verzí 0.92, jež rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Více v příspěvku na blogu Davida Revoye, autora open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu.

Ladislav Hagara | Komentářů: 0
16.2. 16:26 | Bezpečnostní upozornění

Byla vydána verze 1.1.0e kryptografické knihovny OpenSSL. Dle bezpečnostního upozornění 20170216 byla opravena závažná bezpečnostní chyba CVE-2017-3733.

Ladislav Hagara | Komentářů: 1
16.2. 13:03 | Pozvánky

GNOME hackaton proběhne v Brně na FIT VUT v Red Hat Labu (budova Q) v pondělí 20. února od 15:00. Registrace není nutná, ale pokud dáte na FaceBooku vědět, že plánujete dorazit, pomůže to s plánováním.

Ladislav Hagara | Komentářů: 0
16.2. 13:02 | Pozvánky

Únorový Prague Containers Meetup se koná 21. února v budově MSD. Můžete se těšit na přednášky o tom, proč a jak používat kontejnery a zároveň získat zajímavý pohled na historii a budoucnost kontejnerů.

little-drunk-jesus | Komentářů: 0
16.2. 08:55 | Zajímavý software

Google na svém blogu věnovaném vývojářům oznámil vydání verze 1.0 open source knihovny pro strojové učení TensorFlow (Wikipedie). Přehled novinek v poznámkách k vydání na GitHubu. Zdrojové kódy TensorFlow jsou k dispozici pod licencí Apache 2.0.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 655 hlasů
 Komentářů: 52, poslední 13.2. 12:45
Rozcestník
Reklama

Dotaz: Zjištění nového mailu návratovou hodnotou

21.6.2007 00:47 Jan Odvárko | skóre: 10
Zjištění nového mailu návratovou hodnotou
Přečteno: 179×

Pěkný den (noc),

řeším triviální problém - potřebuji mít možnost voláním programu zjišťovat, zda je v mém mailboxu nový mail. Nic víc. Čekal jsem, že to vyřeším raz dva, a ejhle... biff, xbiff ani newmail mi nevyhovují, chovají se moc "po svém". Já potřebuju jenom zjistit návratovou hodnotu a podle ní vytisknout v promptu něco jako "NEPŘEČTENÝ MAIL". Je to oříšek, nechce se mi cyklem ověřovat časovou známku či velikost mailboxu. comsat je strašně špatně dokumentovaný. Je tu nějaké čisté, prosté řešení, které jsem přehlédnul? Děkuji

Odpovědi

21.6.2007 01:34 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Napsat si skript v Pythonu/Ruby/..., který se přes pop3 připojí na schránku? :-)
21.6.2007 09:36 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Myslím, že napsat takový program nic těžkého není. Bohužel jsi nenapsal, jak chceš k těm mailům přistupovat - zda je máš na pop3 serveru nebo imapu nebo v lokálním mail boxu. Pro periodickou kontrolu pop3 mailů se dá napsat třeba tohle
#!/usr/bin/env python
import poplib, time, getpass, sys

user = "username"
pop3server = "pop3.seznam.cz"

password = getpass.unix_getpass("Password for "+user+"@"+pop3server+":");

messages_prev = 0

while(1):
    try:
        M = poplib.POP3(pop3server)
        M.user(user)
        M.pass_(password)
    except poplib.error_proto, detail:
        print "Error occured", sys.exc_info()[0], detail
        continue
    res = M.stat()
    messages = res[0]
    M.quit()
    if (messages != messages_prev):
        print time.strftime("%H:%M:%S %d.%m.%Y"),": ", messages, "Messages\a"
    messages_prev = messages
    time.sleep(120)
a něco podobného se dá udělat i pro IMAP, na což jsem dělal applet:
http://kf.fyz.fce.vutbr.cz/pub/gnome-pyapplets-misc/gnome-pyapplets-misc.html
Napiš přesně co chceš a jak by se to mělo chovat.
21.6.2007 11:33 Jan Odvárko | skóre: 10
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Pardon, bral jsem to automaticky... jedná se o lokální mailbox.
blami avatar 21.6.2007 12:03 blami | skóre: 29 | Praha
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
co treba mail -e ?
Josef Kufner avatar 21.6.2007 12:23 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Ještě můžeš zkusit nějaké udělátko postavené okoolo inotify. Třeba incron
Hello world ! Segmentation fault (core dumped)
21.6.2007 13:56 Jan Odvárko | skóre: 10
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Vyřešeno. A nakonec velmi jednoduše... stačí porovnat čas posledního přístupu do mailboxu s časem jeho změny (atime vs. mtime). Takhle:
checknewmail.sh

#!/bin/sh

mtime=`stat -c%Y \$MAIL`
atime=`stat -c%X \$MAIL`

exit `test $atime -lt $mtime`
A potom někde použít:
checknewmail.sh && echo "Máte nový mail"
21.6.2007 14:29 jekub | skóre: 8 | blog: noblog
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
A co když je oddíl připojen s parametrem noatime?
21.6.2007 15:27 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Tak se nastaví jako atime ;-)

Nebo si skript může pamatovat, kdy naposledy se díval, jestli je nový mail, a tento čas pak porovnat s nejnovějším mailem. Nevýhoda - zpráva o novém mailu se pokaždé zobrazí jen jednou.
21.6.2007 15:35 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Myslím, že v dnešní době je lepší použít inotify. Následující program čeká na to, až nějaký proces něco zapíše do mailboxu a opět jej zavře. Pak program skončí.
#!/usr/bin/python
from pyinotify import WatchManager, Notifier, EventsCodes, ProcessEvent
import sys, pwd, os, posix

username = pwd.getpwuid(posix.getuid()).pw_name
path = os.path.join('/var/mail', username)

mask = EventsCodes.IN_MODIFY | EventsCodes.IN_CLOSE_WRITE

class mailPE(ProcessEvent):
    def __init__(self):
        self.was_modified = False
        self.was_closed = False

    def process_IN_CLOSE_WRITE(self, event):
        self.was_closed = True

    def process_IN_MODIFY(self, event):
        self.was_modified = True

wm = WatchManager()
mbox = mailPE()
notifier = Notifier(wm, mbox)
wm.add_watch(path, mask)

while True:
    notifier.read_events()
    notifier.process_events()
    if mbox.was_closed and mbox.was_modified:
        break
Není nutné periodicky zjišťovat změnu něčeho, když tu máme takovou jadernou vymoženost. Proces celou dobu spí, ale přitom je schopen reagovat okamžitě.
21.6.2007 16:37 Jan Odvárko | skóre: 10
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Díky, zkusím to upravit podle svých potřeb. Kdyby nic jiného, alespoň se přiučím Pythonu.
Josef Kufner avatar 21.6.2007 18:28 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Zjištění nového mailu návratovou hodnotou
Použít exec místo exit by bylo asi efektivnější (a odstranit ``).
Hello world ! Segmentation fault (core dumped)

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.