Scroll to navigation

IMAPFILTER(1) General Commands Manual IMAPFILTER(1)


imapfiltermail filter


imapfilter [-inVv] [-c configfile] [-d debugfile] [-e 'command'] [-l logfile] [-p pidfile] [-t truststore]


imapfilter is a mail filtering utility. It connects to remote mail servers using the Internet Message Access Protocol (IMAP), sends searching queries to the server and processes mailboxes based on the results. It can be used to delete, copy, move, flag, etc. messages residing in mailboxes at the same or different mail servers. The 4rev1 and 4 versions of the IMAP protocol are supported.

The command line options of imapfilter(1) are as follows:

Path to the configuration file to read, or the ‘-’ character to read the configuration from the standard input stream. The default is $HOME/.imapfilter/config.lua.
File that contains debugging information about the full communication with the server, along with other inner workings' details.
May be used to enter “one line” of configuration, while it is also possible to pipe a full configuration as a string. When this option is used, a configuration file will not be loaded.
Enters interactive mode after executing the configuration file.
File that contains logs of error messages produced.
This option enables the so called dry-run mode, and any actions that would result in changes to the server do not actually take place. So the requests that would modify any data are not sent to the server, even though informational messages about these actions are still printed.

Any other methods, that only receive data from the server, are performed as normal, such as for example the searching methods. Note, that the number of messages an action is reported to be applied upon, might differ between dry-run mode and the normal execution, and this is expected as in the latter case the data on the server are continuously altered by subsequent actions.

The path to the system's SSL CA TrustStore directory or file. SSL connections will be validated using the CA certificates found in this directory or file, and when this is not possible, the local $HOME/.imapfilter/certificates file will be used. The default CA directory is /etc/ssl/certs/, and the default CA file is /etc/ssl/cert.pem.
Write the process ID (PID) to this file on startup, and delete it on exit.
Displays version and copyright information.
Enables printing of some brief details of the communication with the server.


User's home directory.
Program's configuration directory, which overrides the default $HOME/.imapfilter/.


Default configuration file. Because this file may contain sensitive data such as user passwords, the recommended permissions are read/write for the user, and not accessible by others.
File where the SSL certificates are stored.




RFC 3501, RFC 3348, RFC 2683, RFC 2595, RFC 2342, RFC 2195, RFC 2177
RFC 1730
January 6, 2023 Debian