64,000개의 이메일이 들어 있는 IMAP 폴더가 있습니다. 연도별로 보관하고 싶습니다. 어떻게 해야 하나요?
답변1
아마도 가장 쉬운 방법은 T태그 모드 기능(여기에 바인딩)을 사용하여 1년 분량의 메시지에 태그를 지정한 다음 태그 접두사( ;s여기)를 사용하여 메시지를 저장하여 폴더에 넣는 것입니다.
Mutt에는 여러 날짜 패턴 일치 항목이 있습니다(불행히도 모두 dd/mm/yyyy 형식의 날짜를 사용합니다). 이것mutt 매뉴얼의 "패턴 수정자" 섹션모두 나열되어 있지만 유용한 것은 ~d
(보낸 날짜, 날짜: 헤더, 보낸 사람이 지정하므로 스푸핑될 수 있음) 및 ~r
(수신 날짜)일 수 있습니다. 2018년에 수신된 메시지의 예:~r01/01/2018-31/12/2018
일반적으로 연간 보관을 수행하는 경우 다음과 같은 줄이 필요할 수 있습니다.
save-hook ~r01/01/2019-31/12/2019 =Archives/2019
save-hook ~r01/01/2020-31/12/2020 =Archives/2020
⋮
귀하의 구성에서 (불행히도 몇 년마다 몇 줄을 추가하지 않는 방법을 찾지 못했습니다).
또 다른 방법은 Mutt 외부에서 IMAP 서버에 액세스할 수 있는 것입니다. 예를 들어, Dovecot을 실행하는 IMAP 서버에 대한 셸 액세스 권한이 있으므로(직접 실행하기 때문에) doeveadm
연간 cron 작업에서 이를 사용할 수 있습니다.
this_year=$(date +%Y)
last_year=$((this_year-1))
#⋮
newbox="Sent/$last_year"
doveadm mailbox create "$newbox" || true
doveadm -v move "$newbox" mailbox 'Sent' SENTBEFORE "$this_year-01-01" SENTSINCE "$last_year-01-01"