Difference between revisions of "Exim Queue Scripts"
From James Dooley's Wiki
(→Script) |
(→Script) |
||
| Line 3: | Line 3: | ||
==Script== | ==Script== | ||
| − | Find top sending addresses for current messages in queue | + | ===Find top sending addresses for current messages in queue=== |
<code>[bash,n] | <code>[bash,n] | ||
find /var/spool/exim/input -name '*-H' | xargs grep 'auth_id' | sort | uniq -c | sort -rn | find /var/spool/exim/input -name '*-H' | xargs grep 'auth_id' | sort | uniq -c | sort -rn | ||
</code> | </code> | ||
| − | Get message IDs for messages from a specific sender | + | ===Get message IDs for messages from a specific sender=== |
<code>[bash,n] | <code>[bash,n] | ||
find /var/spool/exim/input -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 | cut -d- -f1-3 | find /var/spool/exim/input -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 | cut -d- -f1-3 | ||
</code> | </code> | ||
| − | Get list of IP addresses sending messages from specific address | + | ===Get list of IP addresses sending messages from specific address=== |
<code>[bash,n] | <code>[bash,n] | ||
for i in $(find -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 \ | for i in $(find -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 \ | ||
| Line 19: | Line 19: | ||
</code> | </code> | ||
| − | Delete messages based on address | + | ===Delete messages based on address=== |
<code>[bash,n] | <code>[bash,n] | ||
for i in $(find -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 | cut -d- -f1-3); do exim -Mrm $i; done | for i in $(find -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 | cut -d- -f1-3); do exim -Mrm $i; done | ||
Revision as of 17:49, 22 June 2011
Contents
Overview
Different scripts to search the exim queue.
Script
Find top sending addresses for current messages in queue
[bash,n]
find /var/spool/exim/input -name '*-H' | xargs grep 'auth_id' | sort | uniq -c | sort -rn
Get message IDs for messages from a specific sender
[bash,n]
find /var/spool/exim/input -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 | cut -d- -f1-3
Get list of IP addresses sending messages from specific address
[bash,n]
for i in $(find -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 \
| cut -d- -f1-3); do exim -Mvh $i | grep helo | cut -d "[" -f2 | cut -d "]" -f1| grep -v helo_name; done | sort | uniq -c | sort -n
Delete messages based on address
[bash,n]
for i in $(find -name '*-H' | xargs grep 'auth_id' | grep <EMAIL ADDRESS> | cut -d: -f1 | cut -d/ -f3 | cut -d- -f1-3); do exim -Mrm $i; done