새로운 .procmailrc를 사용하여 스풀 파일에서 procmail을 호출하시겠습니까?

새로운 .procmailrc를 사용하여 스풀 파일에서 procmail을 호출하시겠습니까?

최근 Postfix 메일 서버에 사용할 새 .procmailrc파일을 구성했습니다 . .forward새 이메일과 새 이메일 필터를 사용하여 테스트 .procmailrc하고 필요에 따라 올바르게 전달했습니다.

이제 /var/spool/mail/***username***새 파일을 사용하여 내 파일의 전체 내용을 재처리하여 .procmailrc2000개가 넘는 모든 메시지가 새 파일로 올바르게 분류되고 ~/mail/Likely-Spam필터링되지 않은 모든 메시지가 미래 세대를 위해 내 회사 Outlook 계정으로 전달되도록 하고 싶습니다.~/mail/Almost-Certainly-Spam~/mail/Cron-Jobs~/mail/Email-Backup

이를 수행하는 간단한 명령이 있습니까?

내 메일 서버는 postfix가 포함된 RHEL 7을 실행하고 있습니다.

답변1

procmailformail기존 mbox를 처리하는 데 사용할 수 있는 mbox라는 다른 프로그램이 함께 제공됩니다 . 이를 사용하여 사서함을 다시 procmail.

새로 도착하는 메일에 대한 경쟁 조건을 피하기 위해 처리하기 전에 스풀 mbox의 이름을 바꿉니다. 예를 들어:

mv /var/spool/mail/username /var/spool/mail/username.orig
formail -s procmail < /var/spool/mail/username.orig
rm /var/spool/mail/username.orig

그 이후의 모든 매개변수와 옵션은 -s procmailprocmail로 전달됩니다.

formail매뉴얼 페이지 에서 :

-s

입력은 별도의 메일 메시지로 분할되어 프로그램에 차례로 파이프됩니다(각 부분은 새 프로그램을 시작합니다).

-s지정된 마지막 옵션이어야 합니다.첫 번째다음 매개변수는 프로그램 이름이어야 합니다.다른 사람 매개변수가 전달됩니다..

이 프로그램을 생략하면 formail표준 출력의 분할 메일이 다시 연결됩니다.

자세한 내용을 보시고 배워보시기 man formail바랍니다 .man procmail

관련 정보