
mboxshell v0.6.2
mboxShell. किसी भी आकार की MBOX फ़ाइलों के लिए तेज़ टर्मिनल व्यूअर। Gmail Takeout बैकअप (50GB+) से ईमेल खोलें, खोजें और निर्यात करें, बिना उन्हें मेमोरी में लोड किए। Rust में निर्मित।
mboxShell
किसी भी आकार की MBOX फ़ाइलों के लिए तेज़ टर्मिनल व्यूअर। Gmail Takeout बैकअप (50 GB+) से ईमेल को मेमोरी में लोड किए बिना खोलें, खोजें और निर्यात करें।
यह प्रोजेक्ट क्यों बनाया गया
जब आप Google Takeout का उपयोग करके Gmail से अपना ईमेल निर्यात करते हैं, तो आपको एक या अधिक .mbox फ़ाइलें मिलती हैं जिनका वज़न दसियों गीगाबाइट हो सकता है — साथ ही आपके स्वामित्व वाले प्रत्येक Google Group के लिए एक और मेलबॉक्स, जिसे नज़रअंदाज़ करना आसान है और जो Gmail निर्यात से भी बड़ा हो सकता है। कोई क्रॉस-प्लेटफ़ॉर्म टर्मिनल टूल नहीं है जो आपको उन फ़ाइलों को पूरी तरह मेमोरी में लोड किए बिना कुशलता से खोलने, खोजने और ब्राउज़ करने देता हो।
mboxShell इस समस्या को हल करने के लिए बनाया गया था: कुछ सेकंड में 50 GB की MBOX खोलें, लाखों संदेशों को सहजता से नेविगेट करें, प्रेषक, तिथि या सामग्री के आधार पर खोजें, और जो चाहें निर्यात करें। सब कुछ टर्मिनल से, बिना GUI, बिना सर्वर, बिना बाहरी निर्भरता।
उपयोग के मामले
- Gmail बैकअप ब्राउज़ करें (Google Takeout) उनके मूल लेबल के साथ
- आपके स्वामित्व वाले समूहों को पढ़ें, जिन्हें Takeout अपने स्वयं के मेलबॉक्स के रूप में निर्यात करता है — अक्सर संग्रह में सबसे बड़ी फ़ाइलें
- मेल संग्रह का विश्लेषण करें सर्वर पर, माइग्रेशन या ऑडिट के दौरान
- संदेश खोजें किसी भी स्रोत की MBOX फ़ाइलों में (Thunderbird, Unix सर्वर, आदि)
- संदेश निर्यात करें आगे की प्रक्रिया के लिए EML, CSV या सादे टेक्स्ट में
- अटैचमेंट निकालें व्यक्तिगत रूप से या एक साथ
- कई MBOX फ़ाइलों को मर्ज करें एक में, डुप्लिकेट हटाकर
Mac पर भी: mboxViewer
यदि आप macOS पर मूल ग्राफ़िकल अनुभव पसंद करते हैं, तो mboxViewer देखें — उसी टीम द्वारा बनाया गया एक मूल Mac ऐप। यह MBOX फ़ाइलों को किसी मेल क्लाइंट में आयात किए बिना खोलने, ब्राउज़ करने और खोजने के लिए एक परिचित मेलबॉक्स-शैली इंटरफ़ेस प्रदान करता है। अपनी .mbox फ़ाइल को ड्रैग एंड ड्रॉप करें, और आपको एक साफ़ macOS-मूल विंडो में अपने सभी संदेशों, अटैचमेंट और लेबल तक तत्काल पहुँच मिलती है। उन उपयोगकर्ताओं के लिए आदर्श जो mboxShell के पार्सिंग इंजन की शक्ति को डेस्कटॉप GUI के आराम के साथ चाहते हैं।
ब्राउज़र में भी: Online Mbox Viewer
कुछ भी इंस्टॉल किए बिना MBOX फ़ाइल को देखना चाहते हैं? Online Mbox Viewer आज़माएँ — उसी लेखक द्वारा एक मुफ़्त, MIT-लाइसेंस प्राप्त वेब ऐप। यह .mbox फ़ाइलों को पूरी तरह आपके ब्राउज़र में खोलता और रेंडर करता है: कुछ भी किसी सर्वर पर अपलोड नहीं होता, इसलिए आपका ईमेल आपकी मशीन पर ही रहता है। किसी भी डिवाइस से त्वरित नज़र के लिए बिल्कुल सही। स्रोत कोड github.com/dcarrero/online-mbox-viewer पर।
विशेषताएँ
- फ़ाइल को कभी मेमोरी में लोड नहीं करता। 1 MB बफ़र के साथ स्ट्रीमिंग I/O का उपयोग करता है। 100 GB की MBOX लगभग उतनी ही ~500 MB RAM का उपयोग करती है जितनी 1 GB की (केवल मेटाडेटा इंडेक्स मेमोरी में रहता है)।
- स्थायी इंडेक्सिंग। पहली बार खोलने पर एक बाइनरी इंडेक्स (
.mboxshell.idx) बनता है ताकि बाद के खुलने में एक सेकंड से कम समय लगे। - पूर्ण Gmail समर्थन।
X-Gmail-Labelsको साइडबार पैनल में वर्चुअल फ़ोल्डर के रूप में पहचानता और प्रदर्शित करता है, जिससे आप Inbox, Sent, Starred, कस्टम लेबल आदि के आधार पर फ़िल्टर कर सकते हैं। - Google Groups मेलबॉक्स। Takeout संग्रह द्वारा आपके स्वामित्व वाले प्रत्येक समूह के लिए भेजी गई
topics.mboxफ़ाइलों को पढ़ता है, उन्हें अर्थहीन फ़ाइल नाम के बजाय समूह के नाम से नामित करता है, समूह को वर्चुअल लेबल के रूप में दिखाता है, और सटीकX-GM-THRIDआईडी द्वारा वार्तालापों को थ्रेड करता है। - सही एन्कोडिंग। RFC 2047 एन्कोडेड-वर्ड्स को डिकोड करता है, UTF-8, ISO-8859-1, Windows-1252, KOI8-R, और
encoding_rsद्वारा पहचाने जाने वाले किसी भी charset का समर्थन करता है। - वार्तालाप थ्रेडिंग। JWZ एल्गोरिदम (वही जो Netscape/Mozilla द्वारा उपयोग किया जाता है) का उपयोग करके संदेशों को थ्रेड में समूहित करता है, या मेलबॉक्स की अपनी वार्तालाप आईडी जब उपलब्ध हो।
- उन्नत खोज। फ़ील्ड-विशिष्ट फ़िल्टरिंग (
from:,subject:,date:,body:,has:attachment,label:, आदि), तिथि सीमाएँ, आकार फ़िल्टर, AND/OR ऑपरेटर, और नेगेशन। - लचीला निर्यात। व्यक्तिगत या थोक निर्यात EML, CSV (Excel-संगत), सादे टेक्स्ट में। डिकोडेड अटैचमेंट निष्कर्षण।
- एकल बाइनरी। कोई रनटाइम नहीं, कोई निर्भरता नहीं। एक ~5 MB निष्पादन योग्य फ़ाइल जो Linux, macOS और Windows पर चलती है।
- पूर्ण टर्मिनल UI। कीबोर्ड नेविगेशन (vi-शैली), तीन लेआउट मोड, इंटरैक्टिव सर्च बार, कॉन्फ़िगर करने योग्य शॉर्टकट।
- द्विभाषी। इंटरफ़ेस अंग्रेज़ी और स्पेनिश में उपलब्ध, सिस्टम लोकेल से स्वतः पहचाना जाता है।
इंस्टॉलेशन
पूर्व-निर्मित बाइनरी (अनुशंसित)
Releases पृष्ठ से अपने प्लेटफ़ॉर्म के लिए नवीनतम रिलीज़ डाउनलोड करें:
| प्लेटफ़ॉर्म | बाइनरी |
|---|---|
| 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 |
डाउनलोड करने के बाद, इसे निष्पादन योग्य बनाएँ और अपने PATH में ले जाएँ:
# Linux / macOS
chmod +x mboxshell-*
sudo mv mboxshell-* /usr/local/bin/mboxshell
# Or place it in a user-local directory
mv mboxshell-* ~/.local/bin/mboxshell
Windows पर, mboxshell-windows-x86_64.exe को अपने PATH में किसी फ़ोल्डर में ले जाएँ, या इसे सीधे चलाएँ।
स्रोत से बिल्ड करें
आवश्यकताएँ: Rust 1.85 या बाद का संस्करण।
# Clone and build
git clone https://github.com/dcarrero/mboxshell.git
cd mboxshell
cargo build --release
# The binary is at target/release/mboxshell
# Install it system-wide:
sudo cp target/release/mboxshell /usr/local/bin/
# Or for the current user only:
cp target/release/mboxshell ~/.local/bin/
अन्य प्लेटफ़ॉर्म के लिए क्रॉस-कंपाइलिंग
# Add the target you need
rustup target add aarch64-apple-darwin # macOS Apple Silicon
rustup target add x86_64-unknown-linux-gnu # Linux x86_64
rustup target add aarch64-unknown-linux-gnu # Linux ARM64
# Build for a specific target
cargo build --release --target aarch64-apple-darwin
Cargo के माध्यम से इंस्टॉल करें
cargo install --git https://github.com/dcarrero/mboxshell.git
त्वरित शुरुआत
# Open an MBOX file in the terminal UI
mboxshell mail.mbox
# Index and show statistics
mboxshell index mail.mbox
mboxshell stats mail.mbox
# Search from the command line
mboxshell search mail.mbox "from:[email protected] date:2024"
mboxshell search mail.mbox "has:attachment subject:invoice" --json
# Export messages
mboxshell export mail.mbox --format eml --output ./emails/
mboxshell export mail.mbox --format csv --output summary.csv
# Hand over only part of an archive: a new mailbox with just the matches
mboxshell export mail.mbox --format mbox --query "from:[email protected]" -o handover.mbox
# Extract attachments
mboxshell attachments mail.mbox --output ./attachments/
# Merge multiple MBOX files (duplicates are removed by default)
mboxshell merge file1.mbox file2.mbox -o merged.mbox
# Merge tagging every message with the mailbox it came from
mboxshell merge Inbox.mbox Sent.mbox -o merged.mbox --source-header
# Generate shell completions
mboxshell completions bash > /etc/bash_completion.d/mboxshell
mboxshell completions zsh > ~/.zfunc/_mboxshell
mboxshell completions fish > ~/.config/fish/completions/mboxshell.fish