|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Dmitry Pryanishnikov 2:464/36 23 Oct 2006 14:56:12 To : Valentin Davydov Subject : =?koi8-u?Q?Re=3A_mbox_=D0=CF=DE=C9=D3=D4=C9=D4=D8?= -------------------------------------------------------------------------------- Привет! On Mon, 23 Oct 2006, Valentin Davydov wrote: > Существует ли готовая софтина, способная отредактировать mbox(5), например, > убрать письма от начала и до заданной даты во "From ", не трогая остальных > писем, и при этом корректно отслеживающая пограничные ситуации (такие, как > полезший добавлять новую почту посреди процесса mail.loclal(8), внезапно > кончившееся место на диске и т.п.), или её придётся сочинять из lockf(1), > sed(1) и такой-то матери? Порт mail/imap-uw ставит /usr/local/bin/mailutil - у нее есть замечательная команда prune: mailutil prune prunes the mailbox of messages which match certain criteria, which are in the form of IMAP2 (RFC 1176) SEARCH arguments. For example, the command. mailutil prune INBOX "before 1-jan-2004" will delete and expunge all messages written before January 1, 2004. Внутрь утилиты, правда, не лез разбираться, как она доступ к ящику блокирует. По крайней мере, ежесуточная чистка примерно 20 ящиков, в которые идет доставка новых писем через procmail, за полгода использования пока не привела к искажению ящика или потере почты - иногда только предупреждение насчет кривого X-UID выводит, но при этом ничего страшного с ящиком/письмом не делает, только само поле X-UID исправляет. Я ее стартую кроном от имени пользователя вот таким скриптом, чтобы не потерять диагностику: #!/bin/sh logit="/usr/bin/logger -p user.info -t $LOGNAME" purge() { $logit Purging ${2}-old mail from mail/$1 errmsg=`(/usr/local/bin/mailutil prune mail/$1 \ "before $(date -v-$2 +%d-%b-%Y)" | $logit) 2>&1` if [ -n "$errmsg" ]; then echo Error purging mail/$1: echo "$errmsg" fi } purge MAILER-DAEMON 2w Sincerely, Dmitry -- Atlantis ISP, System Administrator e-mail: dmitry@atlantis.dp.ua nic-hdl: LYNX-RIPE --- ifmail v.2.14.os-p7 * Origin: Atlantis ISP (2:464/36@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/24521b7acf860.html, оценка из 5, голосов 10
|