返回列表 回复 发帖

发布脚本:定期清理垃圾邮件、垃圾箱和收件箱的过期邮件

脚本名字: cleanupmaildir.pl

运行环境:
下载附件,gunzip解压缩,然后拷贝这个文件到extman/tools/目录下,即可使用。

运行后的帮助
# ./cleanupmaildir.pl

usage: ./cleanupmaildir.pl [options] ...

Options:

  -d, --domain=domain.tld                 domain name
  -e, --expiredate=180                    default: 180 (days). expire date
  -u, --ignoreuserlist=/path/to/userlist  ignore user list
  -l, --logfile=/path/to/logfile          delete log to this file
  -c, --check                             check file's path before delete it
  -i, --inbox                             default: No Delete. Delete inbox email
  -h, --help                              help
运行示例:
# ./cleanupmaildir.pl -d extmail.org -e 180 -u userlist.txt -l /var/log/cleanupmaildir.log

-d意思就是输入你想清理的域
-e是过期时间,默认为180天
-u是忽略用户列表,即这些用户不做清理
-l是指定日志写入的地方,如果不指定则把日志打印到标准输出
-c打印出所有用户要删除的文件路径,但是并不做删除(多谢chris建议)
-i就是指定清理收件箱,默认为不清理,这个选项请慎用
-h打印帮助

加入crontab吧,呵呵,每日清理掉“垃圾邮件”和”垃圾箱“这两个目录里的邮件,释放你的磁盘空间。


附件: 您所在的用户组无法下载或查看附件
http://www.chifeng.name
http://extmail.org
http://postfix.org.cn
-------- chifeng
顶!!!!!!!!11

这个相当需要

测试一下
在清理之前,能看得到清理清单吗?

[ 本帖最后由 chris 于 2010-8-10 12:14 编辑 ]
[root@mail tools]# ./cleanupmaildir.pl -d extmail.org -e 30  -l /var/log/cleanupmaildir.log
extmail.org no exists!

[ 本帖最后由 buyixiaozi 于 2010-8-10 12:42 编辑 ]
经测试,EMOS1.5.0 的垃圾邮箱不会清除。。。
清理清单你是看不懂的,一大串文字
社区又要火了。 :D :D :D :D :D
原帖由 chris 于 2010-8-10 12:11 发表
在清理之前,能看得到清理清单吗?
意思是先打印出来要清理的文件列表吗?? 这个列表其实就是要被删除邮件,仅仅是个全路径。如果你用-l参数,会存入日志里,如果不用会打印到标准输出。
清理之前看不到。
http://www.chifeng.name
http://extmail.org
http://postfix.org.cn
-------- chifeng
原帖由 buyixiaozi 于 2010-8-10 12:18 发表
[root@mail tools]# ./cleanupmaildir.pl -d extmail.org -e 30  -l /var/log/cleanupmaildir.log
extmail.org no exists!
我用extmail.org只是一个示例而已。得改成你自己的域名。
http://www.chifeng.name
http://extmail.org
http://postfix.org.cn
-------- chifeng
原帖由 herong 于 2010-8-10 12:56 发表
经测试,EMOS1.5.0 的垃圾邮箱不会清除。。。
我是在最新版extman-1.1下测试的。要不你升级到extman-1.1试试??
http://www.chifeng.name
http://extmail.org
http://postfix.org.cn
-------- chifeng
原帖由 chifeng 于 2010-8-10 13:15 发表


意思是先打印出来要清理的文件列表吗?? 这个列表其实就是要被删除邮件,仅仅是个全路径。如果你用-l参数,会存入日志里,如果不用会打印到标准输出。
清理之前看不到。 ...
对,我希望先看到清理的文件列表。
使用-l参数,也只能在删除之后才能看到日志啊。
原帖由 chifeng 于 2010-8-10 13:15 发表


意思是先打印出来要清理的文件列表吗?? 这个列表其实就是要被删除邮件,仅仅是个全路径。如果你用-l参数,会存入日志里,如果不用会打印到标准输出。
清理之前看不到。 ...
不用详细的文件列表,我只是想看到用户目录。比如:
/home/domains/extmail.org/user1
/home/domains/extmail.org/user2
我只想看到这一级目录列表。
不知道效果如何,架个虚拟机先试下看看。谢谢!
返回列表