linux – 使用mailx和bash脚本解析邮件的正文
发布时间:2020-12-13 23:04:46 所属栏目:Linux 来源:网络整理
导读:我试图使用电子邮件自动化我的工作的某些部分.是否有任何方法已经可以使用mailx和bash我可以用来提取邮件的正文? 解决方法 如果这是通过类似sendmail的MTA传递到本地用户帐户的邮件,那么您可以使用procmail在发送邮件时对其进行解析. 在我使用的系统上,send
我试图使用电子邮件自动化我的工作的某些部分.是否有任何方法已经可以使用mailx和bash我可以用来提取邮件的正文?
解决方法
如果这是通过类似sendmail的MTA传递到本地用户帐户的邮件,那么您可以使用procmail在发送邮件时对其进行解析.
在我使用的系统上,sendmail会检查?/ .forward文件,所以我在~username / .forward中有这个 # pipe incoming mail to procmail # ref: http://www.panix.com/~elflord/unix/procmail.html # ref: http://porkmail.org/era/procmail/mini-faq.html#forward "|IFS=' ' && p=/usr/local/bin/procmail && test -x $p && exec $p -f- || exit 75 #username" 然后,~username / .procmailrc包含: # procmail tutorial: http://tldp.org/LDP/LG/issue14/procmail.html PATH=/usr/local/bin:/bin:/usr/bin MAILDIR=$HOME/Mail DEFAULT=$HOME/Mail/inbox LOGFILE=$HOME/procmail.`date +%Y-%m`.log SHELL=/usr/bin/ksh MY_XLOOP='X-Loop: username@hostname.subdomain.example.com' MY_RECIPIENT='mailing.list@example.com' ############################################################################# # if the email comes from the client with a specific Subject,# send a copy of the message to the processing script,and # carry on with the next recipe :0c * ^From:.*@clientdomain.invalid * ^Subject:.*Account.*(Request|Access|Approval) | $HOME/bin/process_account_request_email.pl | mailx -s "Account request results" $MY_RECIPIENT ############################################################################# # forward all mail to mailing list :0 * ! ^$MY_XLOOP { # add a header # 'f' = filter: pass message to program and continue processing results # 'h' = pass message headers to program # 'w' = wait for program to return :0fhw | formail -A "$MY_XLOOP" # then forward the message # 'c' = send a copy to recipient and continue processing :0c ! $MY_RECIPIENT } # if we get here,then the message has an X-Loop header. # let it fall into $DEFAULT (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |