AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 525396
Accepted
TRiG
TRiG
Asked: 2013-07-23 10:51:13 +0800 CST2013-07-23 10:51:13 +0800 CST 2013-07-23 10:51:13 +0800 CST

如何从邮件队列中删除某个地址的所有邮件?

  • 772

我们在邮件队列中有很多来自某个地址的邮件。我想删除很多。我找到了按主题行删除的方法,但我想按发件人地址搜索,这似乎要棘手得多。(注意:这些主要是传出消息。)

一些谷歌搜索在HowToForge上找到了我这个命令,但没有解释它的作用。

postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } / spammer@example\.net/ { print $1 }' | tr -d '*!' | postsuper -d - 

我试图使用mailqueuemng,但并没有走得太远(它没有--help,一方面)。

email
  • 2 2 个回答
  • 3399 Views

2 个回答

  • Voted
  1. Best Answer
    Dan Pritts
    2013-07-23T11:05:24+08:002013-07-23T11:05:24+08:00

    可以逐步分析管道以查看其作用。尝试按顺序运行每个命令,直到您完全理解它们:

    postqueue -p
    

    打印队列

    postqueue -p | tail -n +2 
    

    摆脱前几行

    postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } / spammer@example\.net/ { print $1 }' 
    

    使用 [email protected] 搜索任何行;打印这些行的第一个字段。

    postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } / spammer@example\.net/ { print $1 }' | tr -d '*!'
    

    摆脱任何*!

    这将输出一堆队列ID。

    postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } / spammer@example\.net/ { print $1 }' | tr -d '*!' | postsuper -d -
    

    最后一个命令告诉 postfix 删除那些队列 ID。

    postqueue阅读关于、tail、tr和的 The Fine Man 页面postsuper。awk 是一种更复杂的语言,它是它自己的小语言。你需要多一点的手册页来理解它的复杂性,尽管根据我的经验,99% 的 awk 用法很像那个特定的单行。

    • 7
  2. moebius_eye
    2016-09-06T07:44:34+08:002016-09-06T07:44:34+08:00

    很抱歉为已回答的问题添加答案。

    这适用于每天必须这样做的人(面对垃圾邮件活动的客户)。

    有一个人写了“pymailq”,一个可以帮助解决这个问题的工具。

    我还分叉了这个工具,并添加了与 zimbra 的兼容性和一些附加功能。

    这是原始回购

    这是我的叉子

    安装过程如下:

    git clone https://github.com/moebiuseye/pymailq.git
    cd pymailq
    git checkout dev
    
    virtualenv venv
    source venv/bin/activate
    
    python ./setup.py install
    pqshell
    
    • 2

相关问题

  • 如何绕过 ISP 的限制性电子邮件政策?

  • SharePoint 传入电子邮件出现“未知别名”错误

  • 电子邮件帐户的角色名称与人名

  • 如何在笔记本电脑上使用 Tobit David?[关闭]

  • 随行人员通过 VPN 连接到 Exchange 2007

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve