Portál AbcLinuxu, 7. května 2025 05:25

Mažu všechno staré

9.12.2005 16:37 | Přečteno: 1035× | Skripty

A máme tu další z řady jednoduchých skriptíků pro práci s IMAPem. Tentokráte smažeme všechny staré maily, aby složky s mailing listy příliš nebobtnaly.

#!/usr/bin/python
import sys
import imaplib
import time
import string

def purge_step(age, flag):
    l = m.search(None, flag, 'UNFLAGGED', 'UNDELETED', 'BEFORE', time.strftime('%d-%b-%Y', age))
    for st in l[1]:
        if st:
            sts = st.split()
            while sts:
                m.store(string.join(sts[:1000], ','), '+FLAGS.SILENT', '\deleted')
                del sts[:1000]


if len(sys.argv) != 4:
    print 'Usage: imap_purge folder age unreadage'
    sys.exit(4)

folder = sys.argv[1]

ts_read = time.localtime(time.time() - (int(sys.argv[2]) * 86400))
ts_unread = time.localtime(time.time() - (int(sys.argv[3]) * 86400))

m = imaplib.IMAP4('SERVER')
res = m.login('USERNAME', 'PASSWORD')
if res[0] != 'OK':
    sys.stderr.write("login: %s\n" % str(res))
    sys.exit(1)

res = m.select(folder)
if res[0] != 'OK':
    sys.stderr.write("select: %s\n" % str(res))
    sys.exit(2)

purge_step(ts_read, 'SEEN')
purge_step(ts_unread, 'UNSEEN')

m.expunge()
       

Hodnocení: 33 %

        špatnédobré        

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

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

vencour avatar 9.12.2005 16:47 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Mažu všechno staré
Odpovědět | Sbalit | Link | Blokovat | Admin

S Pythonem nedělám, tak se ptám: to, že v kódu nejsou komentáře, to je pravidlem, vůlí autora nebo něčím jiným? Sám si je píše kde jen to jde, velice se mi osvědčují, když se k něčemu po čase vracím.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
9.12.2005 16:59 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Mažu všechno staré
To je leností autora a tím že se jedná o krátké skripty :-). Větší věci se snažím komentovat mnohem víc.
9.12.2005 17:28 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: Mažu všechno staré
Odpovědět | Sbalit | Link | Blokovat | Admin
Prosil bych skripty na téma ,,mažu všechno co nepotřebuju`` a ,,mažu všechno co nechci`` :-) Musí to být hlavně spolehlivé :-)
Copak toho není dost?
9.12.2005 17:33 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Mažu všechno staré
Tak dobře, když jsi to ty:

mažu všechno co nechci mazat
rm -rf /
9.12.2005 18:30 Ondřej Čečák | skóre: 33
Rozbalit Rozbalit vše Re: Mažu všechno staré
Odpovědět | Sbalit | Link | Blokovat | Admin
I tohle mam na KMailu rad, protoze Mazu vsechno stare odpovida funkci "zaniku starych zprav", ktera mi udrzuje Maildir v rozumnych mezich.
-- "Ja vim, on vi, ty pico!"
9.12.2005 18:33 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Mažu všechno staré
No když mě připadá, že tohle by neměl dělat klient, stejně tak jako filtrování ... obzvlášť s mým neustálým hledánom co mi vyhovuje :-).

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.