يمكنك إلقاء نظرة سريعة على رسائل البريد الإلكتروني في Gmail التي تتطابق مع تصنيف معين واستعلام بحث وحذفها نهائيًا.
تم إنشاء هذا لحذف أكثر من 120 ألف رسالة لم تتمكن واجهة ويب GMail وIMAP من التعامل معها (انتهت المهلة للتو). بالإضافة إلى ذلك، كنت بحاجة أيضًا إلى مشروع لاختبار مجموعة من أدوات CI.
قم بتنزيل الملف الثنائي المضغوط لنظام التشغيل الخاص بك من صفحة الإصدار واستخرجه.
وبدلاً من ذلك، إذا كانت لديك عقدة مثبتة، فما عليك سوى استنساخ هذا المستودع باستخدام git
، ثم قم npm install
. بعد ذلك يمكنك اتباع الأمثلة أدناه، واستبدال كل الإشارات إلى gmail_cleaner-linux
node gmail_cleaner.js
.
احذف ما يصل إلى 15 ألف بريد إلكتروني في تصنيف Categories/Updates
:
$ ./gmail_cleaner-linux delete -l " CATEGORY_UPDATES " -n 15000
Found 10381 matching emails in CATEGORY_UPDATES. Deleting them ...
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
1000 messages deleted.
381 messages deleted.
التحقق من النتيجة باستخدام أمر emails
:
$ ./gmail_cleaner-linux emails -l " CATEGORY_UPDATES "
No emails found.
استخدام استعلام Gmail لاستهداف رسائل بريد إلكتروني محددة ومراجعة العينات قبل حذفها:
$ ./gmail_cleaner-linux delete -s -l " Corp " -q " subject:Birthday " --dry-run
Found 47 matching emails in Corp. Deleting them ...
dry-run is active, skip deleting emails.
$ ./gmail_cleaner-linux emails -s -l " Corp " -q " subject:Birthday " -n 3 --no-snippet
retrieving headers for 3 emails ..
Matching email messages:
Date From Subject
Thu, 7 Nov 2019 22:00:14 +0000 Corp App < [email protected] > [Employee] Happy Birthday To Foo
Wed, 6 Nov 2019 22:06:52 +0000 Corp App < [email protected] > [Employee] Happy Birthday To Bar
Tue, 5 Nov 2019 22:00:13 +0000 Corp App < [email protected] > [Employee] Happy Birthday To 42
$ ./gmail_cleaner-linux delete -l " Corp " -q " subject:Birthday "
Found 47 matching emails in Corp. Deleting them ...
47 messages deleted.
$ ./gmail_cleaner-linux emails -s -l " Corp " -q " subject:Birthday "
no emails found.
استخدم --help
أو -h
لرؤية معلومات الاستخدام.
$ ./gmail_cleaner-linux -h
Usage: gmail_cleaner-linux < command > [options]
Commands:
gmail_cleaner-linux labels List all available Gmail labels
gmail_cleaner-linux emails List emails matching specific label and query
gmail_cleaner-linux delete Delete emails matching specific label and query
Options:
--version Show version number [boolean]
--sec-warning-off, -s Don ' t display security warning [boolean]
--verbose, -v Show more verbose information [boolean]
--help, -h Show help [boolean]
Examples:
gmail_cleaner-linux delete -l "SPAM" Delete all emails labeled "SPAM"
gmail_cleaner-linux delete -l "INBOX" -q Delete emails in "INBOX" that has
"subject:spam" --unsafe ' spam ' in subject
يمكنك أيضًا رؤية المزيد من المعلومات حول أمر محدد مثل:
$ ./gmail_cleaner-linux delete -h
$ ./gmail_cleaner-linux emails -h
كجزء من عملية المصادقة، سيفتح هذا البرنامج بشكل افتراضي المنفذ 31338/tcp على المضيف المحلي. يمكنك استخدام منفذ آخر عن طريق تحديد متغير البيئة GMAIL_CLEANER_PORT
، على سبيل المثال:
$ GMAIL_CLEANER_PORT=1337 ./gmail_cleaner.js labels
يستخدم هذا البرنامج Gmail API لذا يجب عليك ترخيصه أولاً قبل أن يتمكن من الوصول إلى حساب Gmail الخاص بك.
عند الوصول إلى Gmail لأول مرة، سيفشل هذا البرنامج في تحديد موقع ملف gmail_token.json
، وسيعود لعرض عنوان URL للتفويض. افتحه في المتصفح، واتبع الخطوات للسماح للبرنامج بالوصول إلى حسابك.
بعد التشغيل الأول، يجب عليك التعامل مع ملف gmail_token.json
بعناية: أي شخص لديه حق الوصول إليه سيكون لديه أيضًا حق الوصول إلى حساب Gmail الخاص بك. ما لم يتم إيقاف تشغيله باستخدام المفتاح -s
، سيعرض Gmail Cleaner تحذير الأمان التالي في كل مرة يتم فيها تشغيله.
** SECURITY WARNING **
Do the following when you no longer need to use this program in the near future.
- Remove the app access to your account from https://myaccount.google.com/u/2/permissions
- Remove gmail_token.json file. Anyone who has access to it will have full control over your Gmail account.
لاحظ أن إزالة الوصول إلى التطبيق من https://myaccount.google.com/u/2/permissions يؤدي فقط إلى إبطال gmail_token.json
لذا لم يعد من الممكن استخدامه للوصول إلى حساب Gmail الخاص بك. لا يحتوي "تطبيق" Gmail Cleaner حقًا أو يحتاج إلى مكون خادم/جانب سحابي يخزن محتوى gmail_token.json
أو أي معلومات على الإطلاق حول حسابك. إذا لم يكن ذلك جيدًا بما فيه الكفاية، فيمكنك دائمًا إنشاء "تطبيق" خاص بك باستخدام التعليمات التالية.
https://mail.google.com/
إلى قائمة النطاقات المطلوب تفويضها (هذا النطاق مطلوب من خلال واجهة برمجة التطبيقات BatchDelete التي يستخدمها gmail_cleaner
)../lib/client_id.json
.gmail_token.json
الموجود.بعد ذلك، في المرة التالية التي تقوم فيها بتشغيل البرنامج، سيطالبك بتخويل تطبيقك الخاص بدلاً من التطبيق الافتراضي.