POP3를 통해 메일 서버에 연결하고 제목에서 특정 암호를 찾아 찾은 후 스크립트를 실행하고 싶습니다.
서투른 Telnet 스크립팅이 아닌 BASH를 사용하여 이를 어떻게 달성할 수 있습니까?
감사해요!
답변1
명령줄에서 POP3 서버를 쿼리하는 일반적인 도구는 원본 메일을 메일 서버에 보관하도록 지시한 다음 ( 메일을 다운로드한 후 fetchmail
"유지" 옵션 또는 메일함 비우기) 일반적인 메일 필터를 사용하는 것입니다. 스크립트를 실행하는 데 사용할 수 있습니다.nokeep
procmail
예 .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
* 특정 기준과 일치하는 메시지에 대해 사용자 정의 프로그램/스크립트가 실행될 수 있습니다
(예: 제목:정규식 일치).