Bash 用于从特定身份验证用户发送的exim队列中删除消息的Shell脚本

Bash 用于从特定身份验证用户发送的exim队列中删除消息的Shell脚本,bash,email,grep,find,exim,Bash,Email,Grep,Find,Exim,我找到了一种方法,可以从exim队列中查找和删除使用经过身份验证的帐户发送的消息(有助于从泄露帐户发送的垃圾邮件中清除队列): find/var/spool/exim/msglog-exec grep-l登录:email@example.com {} \; | sed's/\/var\/spool\/exim\/msglog\/.\/'| xargs exim-Mrm 现在,我想编写一个shell脚本delq.sh,以便运行/delq.shmail@example.com来做,但尝试了各种引号组

我找到了一种方法,可以从exim队列中查找和删除使用经过身份验证的帐户发送的消息(有助于从泄露帐户发送的垃圾邮件中清除队列):

find/var/spool/exim/msglog-exec grep-l登录:email@example.com {} \; | sed's/\/var\/spool\/exim\/msglog\/.\/'| xargs exim-Mrm


现在,我想编写一个shell脚本delq.sh,以便运行
/delq.shmail@example.com
来做,但尝试了各种引号组合,但无法使
找到-执行登录:$1…
正在工作。

最后。。。我能够写剧本:

#!/bin/sh

find /var/spool/exim/msglog -exec grep -l  'login:'$1 {} \; | sed 's/\/var\/spool\/exim\/msglog\/.\///' | xargs exim -Mrm

exiqgrep
是你的朋友:

exiqgrep -f email@example.com -i | xargs exim -Mrm

不,这不是我需要的,我需要删除从指定的经过身份验证的用户发送的消息,因为from:可以伪造。很抱歉,更高级的
exipick
应该可以做到:
exipick'$authenticated\u id eq“email@example.com“| xargs exim-Mrm