2011-01-31 2 views
1

Maildir에 저장된 메일과 함께 getmail + maildrop + mutt + msmtp 체인을 사용하고 있습니다. 아주 큰받은 편지함은 날 귀찮게, 그래서 내가 그런 식으로 날짜별로 메일을 정리하고 싶었 : 나는 많은 인터넷 검색 및 메일 필터 언어에 대해 읽을 수 있지만 나 같은 필터를 쓰기 위해 여전히 어렵습니다Maildrop : 날짜별로 메일 필터링 : 헤더

Maildir 
|-2010.11->all messages with "Date: *, * Nov 2010 *" 
|-2010.12->same as above... 
|-2011.01 
`-2011.02 

. Maildrop의 메일 링리스트 아카이브는 거의 아무것도 가지고 있지 않습니다. https://unix.stackexchange.com/questions/3092/organize-email-by-date-using-procmail-or-maildrop에는 몇 가지 반 솔루션이 있지만 "Date :"헤더를 사용하고 숫자로 "YEAR.MONTH"와 같이 월별로 정렬하려고하기 때문에 마음에 들지 않습니다. 도움, 생각, 링크, 자료를 제공해 주시면 감사하겠습니다.

답변

1

주로 man 페이지를 사용하여 다음 솔루션을 사용하여 Ubuntu 10.04에서 사용했습니다. 다음과 같은 내용으로, 예를 들어, mailfilter-archive라는 mailfilter 파일을 만듭니다

DEFAULT="$HOME/mail-archive" 
MAILDIR="$DEFAULT" 

# Uncomment the following to get logging output 
#logfile $HOME/tmp/maildrop-archive.log 

# Create maildir folder if it does not exist 
`[ -d $DEFAULT ] || maildirmake $DEFAULT` 

if (/^date:\s+(.+)$/) 
{ 
    datefile=`date -d "$MATCH1" +%Y-%m` 
    to $DEFAULT/$datefile 
} 

# In case the message is missing a date header, send it to a default mail file 
to $DEFAULT/inbox 

이것은 입력으로 date 헤더 내용을 고려하여 date 명령을 사용하여 (이 RFC-2822 format에 가정)와 같이 사용하는 형식의 날짜를 생산 메일 파일명

그런 다음 당신의 메시지를 보관하는 메일 파일을 기존에서 다음을 실행하십시오 mail-archive 내용을 잘 보면

cat mail1 mail2 mail3 mail4 | reformail -s maildrop mailfilter-archive 

, 당신은 mail1, mail2, mail3, mail4 등 메일 파일을 제거 할 수 있습니다.

관련 문제