1. 인증

1. 인증

나는 mutt다음과 같은 일련의 단계를 수행합니다.

$ mutt -f imaps://imap.example.com
username
password
[shift]+[D]
~C [email protected]
[shift]+[D]
~C [email protected]
(...)
[shift]+[D]
~C [email protected]

[shift]+[U]
~d<91d
q
y

그래서 나는:

  • 자격 증명을 제공하십시오 login.password
  • [shift]+[D] ~C mailinglist@domain메일링 리스트 삭제를 선택하세요.1,2...질소
  • [shift]+[U] ~d<91d단, 91일이 지나지 않은 항목은 모두 선택 취소하세요.
  • q탈퇴
  • y메시지 삭제 확인

이것을 자동화하는 방법은 무엇입니까? (스크립트로 만들어라)

mutt -e ...

인용하다:

답변1

1. 인증

구성 설정을 사용하여 URI에 사용자 이름을 지정하고 imaps://비밀번호를 지정합니다.imap_pass

이러한 설정을 default 에 두지 않으려면 ~/.muttrc별칭 또는 셸 스크립트 래퍼를 만들어 mutt이러한 설정으로 실행할 수 있습니다. 예를 들어

$ alias muttexample="mutt -f 'imaps://[email protected]/' 
                          -e 'set imap_pass=PASSWORD'"
$ muttexample

(가독성을 높이기 위해 줄바꿈과 들여쓰기가 추가되었습니다.)

매우 조심스럽고 명령줄에서 암호를 사용하고 싶지 않은 경우( 를 ps사용하거나 보면 쉽게 알 수 있음 ) 예를 들어 다음 두 줄을 포함 /proc하는 파일을 만들 수 있습니다 .~/.muttrc.extra

source ~/.muttrc
set imap_pass=PASSWORD

chmod 600 ~/.muttrc.extra본인만 읽을 수 있도록 실행하는 것을 잊지 마세요 .

그런 다음 별칭을 다음과 같이 설정합니다.

$ alias muttexample="mutt -f 'imaps://[email protected]/' 
                          -F ~/.muttrc.extra"

2. 자동삭제

이제 인증이 해제되었으므로 메시지를 자동으로 삭제하는 가장 쉬운 방법은 를 사용하는 것입니다 ~/.muttrc.extra.

source ~/.muttrc
set imap_pass=PASSWORD

folder-hook imaps://[email protected]/ push '[email protected]<enter>[email protected]<enter>[email protected]<enter>U~d<91d<enter>qy'

폴더 후크에서 URI를 최적화해야 할 수도 있습니다 . 저는 imap을 직접 사용하지 않으므로 해당 부분이 폴더 후크에 필요한지 imaps://모르겠습니다 .USERNAME@

해당 폴더 후크 라인이 편집하거나 이해하기에는 너무 길고 복잡해지면 다음 위치에 명령을 저장할 수 있습니다 ~/.muttrc.deletecmds.

[email protected]
[email protected]
[email protected]
U~d<91d
qy

그런 다음 폴더 후크에 이것을 사용하십시오.

folder-hook imaps://[email protected]/ push `sed -z 's/\n/\<enter\>/g' ~/.muttrc.deletecmds`

이번에는 외부 명령을 호출 ~/.muttrc.extra하기 위해 작은따옴표 대신 백틱을 사용한다는 점에 유의하세요 .mutt

sed명령은 \n각 개행 문자( )를 리터럴 텍스트로 바꿉니다 <enter>. 해당 -z옵션을 사용하므로 sedGNU가 필요합니다. GNU sed가 없으면 대신 perlsed를 사용할 수 있습니다 awk.

그런데, 메일함의 로컬 복사본에서 테스트하는 것이 좋습니다(imap이 아닌 로컬 파일을 가리키도록 메일함과 폴더 후크 라인 등을 조정). 로컬 메일이 없다면 imap 메일함의 일부 또는 전체 메시지를 로컬 mbox 파일에 저장하세요.

qy또한 폴더 후크 라인(또는 파일)의 ~/.muttrc.deletecmds마지막 항목 없이 테스트 하겠습니다. mutt자동으로 종료되지 않으므로 수동으로 종료되는지 확인하세요.정확히당신이 원하는 것, 그 이상은 없습니다. 또한 를 %입력한 후 종료하여 변경 사항을 디스크에 기록하는 것을 비활성화 할 수 있으므로 qy테스트 편지함을 다시 채울 필요가 없습니다.


3. 예더 나은 것이것을 하는 방법

mutt실제로 작업에 적합한 도구는 아닙니다.

이 작업을 고려해 보셨나요 perl?네트워크::IMAP::단순기준 치수? 아니면 그 중 하나많은 기타 모듈 perlIMAP 및 이메일 처리용(예:이메일::단순)?

perl마음 에 들지 않는다면 python이것은 좋은 imaplib2모듈입니다.

관련 정보