BASH를 사용하여 원격 POP3 메일 서버 쿼리

BASH를 사용하여 원격 POP3 메일 서버 쿼리

POP3를 통해 메일 서버에 연결하고 제목에서 특정 암호를 찾아 찾은 후 스크립트를 실행하고 싶습니다.

서투른 Telnet 스크립팅이 아닌 BASH를 사용하여 이를 어떻게 달성할 수 있습니까?

감사해요!

답변1

명령줄에서 POP3 서버를 쿼리하는 일반적인 도구는 원본 메일을 메일 서버에 보관하도록 지시한 다음 ( 메일을 다운로드한 후 fetchmail"유지" 옵션 또는 메일함 비우기) 일반적인 메일 필터를 사용하는 것입니다. 스크립트를 실행하는 데 사용할 수 있습니다.nokeepprocmail

.fetchmailrc는 다음과 같습니다:

poll pop.example.com with proto pop3:
        user "username.on.example" there has password "S3cr3t"
        is herman here and wants ssl nokeep 
        mda "/usr/bin/procmail -t /home/herman/.procmailrc.pop.example.com"

.procmailrc.pop.example.com 파일에는 스크립트를 트리거하는 특정 주제에 대한 줄인 일치 규칙이 포함되어 있습니다. 일반적으로 스크립트는 실제로 이메일에 대해 일부 작업을 수행하므로 전체 메시지는 STDIN으로 스크립트에 전달됩니다.

:0
^Subject: passphrase
| /home/herman/bin/script

답변2

사용 fetchmail하고 procmail프로그래밍할 수 있습니다.

fetchmail
* POP3 서버에서 삭제되었는지 여부에 관계없이 새 POP3 메시지를 다운로드 할 수 있습니다
. * 다운로드한 메시지를 다른 프로그램(procmail) stdin으로 전달할 수 있습니다( --mda옵션 참조).

procmail
* 특정 기준과 일치하는 메시지에 대해 사용자 정의 프로그램/스크립트가 실행될 수 있습니다
(예: 제목:정규식 일치).

관련 정보