如何让procmail启动ftp服务器

时间:2015-01-10 11:18:44

标签: procmail

我试图让procmail在收到主题字符串为“Ftp Up”的邮件时启动proftpd ...

目前我有这个

:0:
* ^From:.mymail@mailserver.com
* ^Subject:.^Ftp()+Up
| /etc/init.d/proftpd start

但这不起作用......

任何指针?

1 个答案:

答案 0 :(得分:1)

正则表达式有许多奇怪的错误。如果^Subject:^Ftp标头格式正确,则Subject:无法匹配,因为Ftp在行首时永远不会匹配(好吧,除非Subject:标头后面紧跟着一个Ftp:标题,它不存在,所以你不太可能成为你想要的东西)并且不清楚你希望通过重复一个空组来实现你的目标。

请改为尝试:

:0   # Notice absence of second colon
* ^From.*mymail@mailserver\.com
* ^Subject:[    ]*Ftp Up$
| sudo /etc/init.d/proftpd start

方括号中的空格是空格和制表符。方括号形成一个字符类,星号重复该类零次或多次,因此匹配水平空格的任意运行。

我想你没有从电子邮件帐户启动系统服务的权限(如果你这样做,请更改它!)所以我也添加了sudo。您需要为帐户设置适当的sudo权限才能在没有密码的情况下运行此命令。

gratuituous锁文件是FAQ;见http://porkmail.org/era/procmail/mini-faq.html#locking