mboxShell v0.7.1
Fast terminal viewer for MBOX files of any size.
What's new in 0.7.1 — search semantics
OR had no precedence. It was a flag on the whole query, so a single OR anywhere turned every term into an alternative:
from:alice OR from:bob subject:invoice
did not mean "either sender, about invoices". It returned everything from alice, everything from bob, and everything whose subject said invoice, whoever sent it. On a 6,787-message mailbox that is the difference between 49 hits and 2,102.
A query is now a list of AND-ed groups, each group a list of OR-ed terms, and OR is what puts two terms in the same group — a OR b c reads as (a OR b) AND c. There are still no parentheses, which is what the syntax always implied.
after:X before:Y was impossible to express. The parsed query held a single optional date filter, so the second one silently replaced the first and only before: survived — half of what you typed was dropped without a word. Date and size filters now accumulate, which also makes size:>1mb size:<5mb a band instead of a rewrite.
after: now includes its own day while before: still excludes its own, so after:2024-01-01 before:2025-01-01 is exactly the year 2024 — the half-open reading Gmail's operators use, and consistent with the already-inclusive date:A..B.
Checked against a real 636 MB mailbox: from:tellado (1,821) + from:betancourt (200) = 2,021 for the OR, down to 49 once a subject term is ANDed on; date:2011, date:2011-01-01..2011-12-31 and after:2011-01-01 before:2012-01-01 all agree on 972.
Both manuals and both READMEs document the precedence rule and the date bounds. Full detail in the changelog (español).
If you are coming from 0.6.x, see v0.7.0 for Google Groups support and the index format change.
Downloads
| Platform | Binary |
|---|---|
| Linux x86_64 | mboxshell-linux-x86_64 |
| Linux ARM64 | mboxshell-linux-aarch64 |
| Linux RISC-V 64 | mboxshell-linux-riscv64 |
| FreeBSD x86_64 | mboxshell-freebsd-x86_64 |
| macOS Intel | mboxshell-macos-x86_64 |
| macOS Apple Silicon | mboxshell-macos-aarch64 |
| Windows x86_64 | mboxshell-windows-x86_64.exe |
| Windows ARM64 | mboxshell-windows-arm64.exe |
Installation
# Linux / macOS
chmod +x mboxshell-*
sudo mv mboxshell-* /usr/local/bin/mboxshell
# Or build from source
cargo install --git https://github.com/dcarrero/mboxshell.gitWhat's included
- Streaming MBOX parser (handles 50GB+ files)
- Persistent binary index for instant re-opens
- Gmail labels support (X-Gmail-Labels) and Google Groups mailboxes from Takeout
- Advanced search (from:, subject:, date:, body:, has:attachment, etc.) with AND/OR precedence
- Conversation threading (JWZ algorithm, or
X-GM-THRIDwhen present) - Export to EML, TXT, CSV with attachment extraction
- Full terminal UI with vi-style navigation
- Bilingual interface (English/Spanish)