Intip dengan cepat, dan hapus email secara permanen di Gmail yang cocok dengan label dan kueri penelusuran tertentu.
Ini dibuat untuk menghapus lebih dari 120 ribu pesan yang tidak dapat ditangani oleh antarmuka web GMail dan IMAP (waktunya habis). Selain itu, saya juga memerlukan proyek untuk menguji sekumpulan alat CI.
Unduh zip-biner untuk OS Anda dari halaman rilis dan ekstrak.
Alternatifnya, jika Anda telah menginstal node, klon saja repositori ini menggunakan git
, lalu lakukan npm install
. Setelah itu Anda bisa mengikuti contoh di bawah ini, mengganti semua referensi ke gmail_cleaner-linux
dengan node gmail_cleaner.js
.
Hapus hingga 15 ribu email di label 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.
Verifikasi hasilnya menggunakan perintah emails
:
$ ./gmail_cleaner-linux emails -l " CATEGORY_UPDATES "
No emails found.
Menggunakan kueri Gmail untuk menargetkan email tertentu, dan meninjau sampel sebelum menghapusnya:
$ ./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.
Gunakan --help
atau -h
untuk melihat informasi penggunaan.
$ ./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
Anda juga dapat melihat info lebih lanjut tentang perintah tertentu seperti:
$ ./gmail_cleaner-linux delete -h
$ ./gmail_cleaner-linux emails -h
Sebagai bagian dari proses otentikasi, program ini secara default akan membuka sementara port 31338/tcp di localhost. Anda dapat menggunakan port lain dengan menentukan variabel lingkungan GMAIL_CLEANER_PORT
, misalnya:
$ GMAIL_CLEANER_PORT=1337 ./gmail_cleaner.js labels
Program ini menggunakan API Gmail sehingga Anda harus mengotorisasinya terlebih dahulu sebelum dapat mengakses akun Gmail Anda.
Pada akses pertama ke Gmail, program ini akan gagal menemukan file gmail_token.json
, dan akan kembali menampilkan URL otorisasi. Buka di browser, dan ikuti langkah-langkah untuk mengotorisasi program untuk mengakses akun Anda.
Setelah dijalankan pertama kali, Anda harus menangani file gmail_token.json
dengan hati-hati: siapa pun yang memiliki akses ke file tersebut juga akan memiliki akses ke akun Gmail Anda. Kecuali jika dimatikan dengan tombol -s
, Pembersih Gmail akan menampilkan peringatan keamanan berikut setiap kali dijalankan.
** 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.
Perhatikan bahwa menghapus akses aplikasi dari https://myaccount.google.com/u/2/permissions hanya akan membuat gmail_token.json
tidak valid sehingga tidak dapat lagi digunakan untuk mengakses akun Gmail Anda. "Aplikasi" Pembersih Gmail tidak benar-benar memiliki atau memerlukan komponen server/sisi cloud yang menyimpan konten gmail_token.json
atau informasi apa pun tentang akun Anda. Jika itu belum cukup, Anda selalu dapat membuat "aplikasi" Anda sendiri menggunakan instruksi berikut.
https://mail.google.com/
ke daftar cakupan yang akan diotorisasi (cakupan tersebut diperlukan oleh batchDelete API yang digunakan oleh gmail_cleaner
)../lib/client_id.json
.gmail_token.json
yang ada.Setelah itu, saat berikutnya Anda menjalankan program, program ini akan meminta Anda untuk mengotorisasi aplikasi Anda sendiri, bukan aplikasi default.