用于提取消息 ID 并强制发送的 Bash 脚本

用于提取消息 ID 并强制发送的 Bash 脚本

设法得到我的手:

#!/bin/bash

######### Edit here ##########

[email protected] # Set this to your email id to receive alerts on mail queue
_limit=100 # Set the limit here

##############################

clear;
_result="/tmp/eximqueue.txt"
_queue="`exim -bpc`"

if [ "$_queue" -ge "$_limit" ]; then
echo "Current queue is: $_queue" > $_result
echo "Summary of Mail queue" >> $_result
echo "`exim -bp | exiqsumm`" >> $_result
mail -s "Number of mails on `hostname` : $_queue" $_mail_user < $_result
cat $_result
fi

rm -f $_result

奇迹般有效。现在我有一个问题要问比我稍微高级一点的人。假设队列中已经充斥着垃圾邮件,上面的消息将位于队列的后面 - 因此我们希望强制它在其他任何内容之前发送。根据我的理解,我们可以使用以下方法强制传递一条消息:

/usr/sbin/exim  -M  email-id

这里有人知道我如何从脚本邮件函数中提取电子邮件 ID,然后用它运行上面的命令吗?大致如下:

_message_id = "'exiqgrep -f root@hostname'"
/usr/sbin/exim  -M  "$_message_id"

答案1

尝试

exiqgrep -f 'root@hostname' -i | xargs exim -M

您还可以看看更强大的工具exipick

相关内容