(perl/shell-script) Проверка неактивных пользователей почты

Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
redhot
рядовой
Сообщения: 46
Зарегистрирован: 2009-03-27 10:05:54

(perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение redhot » 2009-04-22 11:02:00

Суть проблемы: есть большая организация, соответственно, очень много пользователей электронной почты. Некоторые из них нею не пользуются, их сообщения со страшной силой загромождают дисковое пространство %) Хотелось бы создать скрипт на perl, который проходит по папкам пользователей, и в случаи обнаружения старой почты во входящих (папке new) заносит имя пользователя в текстовый файлик,и все старые сообщения удаляет. Мои познания перла пока-что не настолько сильны, и сам писАть буду долго :) Если кто-то поможет, буду очень признателен. К тому же, уверен, скрипт пригодится еще многим 8)
Последний раз редактировалось redhot 2009-04-22 12:39:16, всего редактировалось 1 раз.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: (perl-script) Проверка неактивных пользователей почты

Непрочитанное сообщение zg » 2009-04-22 11:06:54

эм... нужен перл или шелл подойдёт?

CrazyPilot
ст. сержант
Сообщения: 321
Зарегистрирован: 2008-08-14 9:17:58
Откуда: Санкт-Петербург
Контактная информация:

Re: (perl-script) Проверка неактивных пользователей почты

Непрочитанное сообщение CrazyPilot » 2009-04-22 11:08:37

ИМХО, удалять почту у валидных юзеров - палево. Надо смотреть базу валидных юзверей, и сравнивать с ящиками на фс. Те ящики, которые не могут быть сопоставлены валидным юзерам - херить. (Или еще лучше бэкапить куда-нить и удалять). Скрипт написать не особо сложно, надо знать только откуда брать валидных юзеров (у меня например ldap).

redhot
рядовой
Сообщения: 46
Зарегистрирован: 2009-03-27 10:05:54

Re: (perl-script) Проверка неактивных пользователей почты

Непрочитанное сообщение redhot » 2009-04-22 12:35:10

1). shell конечно же, тоже подойдет :)
2). нет надобности проверки валидности юзеров, нужно лишь пройтись по почтовым папкам и проверить их содержимое способом, описаным выше :) но если добавится еще и проверка валидности юзеров, то будет дополнительный плюс :) сейчас же главное - найти неактивных пользователей и удалить их старую почту

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: (perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение zg » 2009-04-22 12:45:18

двинул тему в шелл -)))

ща чё-нить сваяем

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: (perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение zg » 2009-04-22 13:29:11

Например так можно

Код: Выделить всё

#!/bin/sh

TIME=`date -v-1m +"%Y%m%d%H%M"` # One month ago

## create file stamp
touch -afm -t $TIME $0

## find files
find /path/to/maildir -type f \! -newer $0 | grep /new/

redhot
рядовой
Сообщения: 46
Зарегистрирован: 2009-03-27 10:05:54

Re: (perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение redhot » 2009-04-22 14:20:54

zg, да да да, начало очень похоже на то, что надо :) только еще исключить дубликаты, записать в файл и поудалять %)
*пошел искать доки по shell-программированию :oops:
Последний раз редактировалось redhot 2009-04-22 14:26:39, всего редактировалось 1 раз.

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: (perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение zg » 2009-04-22 14:26:33

дальше я бы сначала сделал вывод найденных файлов в файл, а когда удостоверился, что всё нормально, то

Код: Выделить всё

cat files.txt | xargs rm -f

redhot
рядовой
Сообщения: 46
Зарегистрирован: 2009-03-27 10:05:54

Re: (perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение redhot » 2009-04-23 12:22:44

спасибо!
в файл выводиться нормально, буду думать, как удалять ненужое и исключать дубликаты :)
кстати, буду признателен за хорошие книги по шелл-программированию (желательно на буржуйском %))


redhot
рядовой
Сообщения: 46
Зарегистрирован: 2009-03-27 10:05:54

Re: (perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение redhot » 2009-04-24 10:58:50

зачем уж так много источников?)) хватило бы RTFM :-D

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35469
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: (perl/shell-script) Проверка неактивных пользователей почты

Непрочитанное сообщение Alex Keda » 2009-04-24 23:37:55

zg прав. в мане всё есть.
а вот книжков не знаю.
пару лет назад перерыл рынок весь - все продавацы понят что была очень хорошая тоненькая книжка - но не помнят названия, и в наличии её нету.
=================
ещё можно посомтреть стартовые скрипты FreeBSD - там очень интересные решения есть, и писал явно не безграмотный человек =)))
Убей их всех! Бог потом рассортирует...