---
name: "chewmail"
section: "1"
platform: "linux"
package: "chewmail"
version: "1.4.1-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/chewmail"
---

# chewmail(1)

mail archiver

## NAME

chewmail - mail archiver

## SYNOPSIS

**chewmail** \[OPTIONS\] \<MAILBOX\> ...

## DESCRIPTION

**chewmail** is a program for archiving mail. It is inspired by the by the Python-based **archivemail**, but with more useful semantics. All mail is archived to the mailbox specified with the **--output-box** switch, in mbox format. It can read mailboxes in mbox, Maildir and MH formats.

Internally, **chewmail** uses Mail::Box, so it supports file names and URLs supported by that module.

## OPTIONS

- **-o** *mailbox-format*, **--output-box**=*mailbox-format*

  The mailbox to archive messages to. The mailbox is run through the Date::Format module, so it supports all it's conversion specifiers. The date and time is relative to the messages timestamp, or the current time if the timestamp is impossible to determine. A sample of the conversion specifiers follows:

  ```
      %%      PERCENT
      %b      month abbr
      %B      month
      %d      numeric day of the month, with leading zeros (eg 01..31)
      %e      numeric day of the month, without leading zeros (eg 1..31)
      %D      MM/DD/YY
      %G      GPS week number (weeks since January 6, 1980)
      %h      month abbr
      %H      hour, 24 hour clock, leading 0's)
      %I      hour, 12 hour clock, leading 0's)
      %j      day of the year
      %k      hour
      %l      hour, 12 hour clock
      %L      month number, starting with 1
      %m      month number, starting with 01
      %n      NEWLINE
      %o      ornate day of month -- "1st", "2nd", "25th", etc.
      %t      TAB
      %U      week number, Sunday as first day of week
      %w      day of the week, numerically, Sunday == 0
      %W      week number, Monday as first day of week
      %x      date format: 11/19/94
      %y      year (2 digits)
      %Y      year (4 digits)
  ```

- **-d** *days-old*, **--days**=days-old

  Only archive messages older than than this many days.

- **-D** *date*, **--date**=*date*

  Only archive messages old than this date. The *date* can be any date understood by Perl's Date::Parse module.

- **-R**, **--only-read**

  Only archive messages that are marked seen or read.

- **--delete-immediately**

  Synchonize the mailboxes after every message is moved. This will be substantially slower but may provide better recovery for some mailbox formats in the event of a crash.

- **--preserve-timestamp**

  Preserve the atime and mtime of the input mailbox. This only affects file-based mailboxes, such as mbox.

- **-n**, **--dry-run**

  Go through all the motions of archiving the mail, but don't actually change any mailboxes.

- **-v**, **--verbose**

  Output more informational messages. Use multiple times for more verbosity.

- **-q**, **--quiet**

  Don't output any messages other than error messages.

- **-V**, **--version**

  Print the version number then exit.

- **-h**, **--help**

  Print usage information then exit.

## EXAMPLES

Archive two day old messages in *inbox* to *inbox-old*:

```
  chewmail --days 2 -o inbox-old inbox
```

Archive read messages to a mailbox named the year-month of the message:

```
  chewmail --only-read -o %Y-%m inbox
```

## SEE ALSO

[**archivemail**(1)](/archivemail/1.md), Date::Parse, Date::Format, Mail::Box

## AUTHOR

Eric Dorland \<eric@kuroneko.ca\>
