Кто-то когда просил скриптец по статистике :)

От: Заславский Андрей <CGatePro_at_mx_ru>
Дата: Mon 16 Feb 2009 - 14:39:51 MSK

Дык вот. Язык - Питон. Собирает маленько инфу из macnt-ящиков, ту что живет в файлах account.info и account.settings. Вывод сделан в хтмл, дабы засунуть в крон и поставить закладку в бродилке :) дубль: http://devil-online.livejournal.com/10135.html#cutid1

Как всегда коменты велкам.

#!/usr/bin/python
# -*- coding: utf8 -*-
import os, string
basepath='/var/CommuniGate/Accounts/'
infofile='account.info'
settingsfile='account.settings'

def getaddrinfo(file,user,infotext,a,b):

    msgcount='0'
    for line in open(user+'/'+file):

        if infotext in line:
            t=line.split('=')
            msgcount=t[1]

    if msgcount!='0':
            print '<td>'+msgcount[a:b]+'</td>'          
    else:
            print '<td>0</td>'
                        

print '<HTML><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"><TABLE
border=1><tr><td>RealName</td><td>email</td><td>MessagesReceived</td><td>StorageUsed</td><td>LastAddress</t d><td>Logins</td><td>LastLogin</td></tr>'

for root, dirs, files in os.walk(basepath):   for file in files:

        if file==settingsfile:
            print '<tr>'
            getaddrinfo(settingsfile,root,'RealName',2,-3)
            print
'<td>'+root.split('/')[4].split('.')[0]+'@alexbank.ru</td>'
        if file==infofile:
            getaddrinfo(infofile,root,'MessagesReceived',2,-2)
            getaddrinfo(infofile,root,'StorageUsed',1,-2)
            getaddrinfo(infofile,root,'LastAddress',3,-4)
            getaddrinfo(infofile,root,'Logins',2,-2)
            getaddrinfo(infofile,root, 'LastLogin',2,-2)
            print '</tr>'

#не учитываются только mbox аккаунты, у которых файлы живут в корне с именами вида "аккаунт.инфо" Получено Mon Feb 16 11:40:13 2009

Этот архив был сгенерирован hypermail 2.1.8 : Fri 24 Apr 2015 - 16:16:19 MSK