Procmail使用指南:规则、标志与操作详解
1. Procmail规则格式
Procmail规则遵循简单的格式,但可以通过多种标志和规则编写方式来指示其解释和执行规则中的指令。
1.1 冒号行
所有规则通常以 :0 开头,后面可跟一个或多个标志和指令。历史上,冒号后会跟一个数字来指定规则中的条件数量,但当前版本的Procmail会自动确定条件数量,因此总是使用 0 。
1.2 锁定机制
为防止多个进程同时写入同一文件,需要使用锁定机制。不过,是否需要锁定取决于过滤器尝试调用的进程类型。例如,仅更改或赋值的过滤器对物理文件无影响,无需锁定;将数据转发到其他进程或接收者的过滤器也无需锁定。
- 自动锁定 :以 :0: 开头的规则会应用自动文件锁定。Procmail会自动确定邮件投递的文件名并创建锁定文件。若锁定文件已存在,会等待一段时间后重试。若无法创建锁定文件,会报告错误并继续执行下一个规则。示例规则: :0 <flags>:
- 强制锁定 :在某些情况下,尤其是使用外部脚本处理邮件时,可能需要强制锁定。若脚本自行选择输出位置或依赖可能被其他Procmail进程更改的文件,需按以下方式明确请求锁定文件: :0 <flags> :scriptname.lock
- 无需锁定 :当转发到执行自身文件或记录锁定过程的管道(如
超级会员免费看
订阅专栏 解锁全文
3

被折叠的 条评论
为什么被折叠?



