Consultez rapidement et supprimez définitivement les e-mails dans Gmail qui correspondent à une étiquette et une requête de recherche spécifiques.
Ceci a été créé pour supprimer plus de 120 000 messages que l'interface Web GMail et IMAP n'étaient pas en mesure de gérer (ils ont simplement expiré). De plus, j'avais également besoin d'un projet pour tester un tas d'outils CI.
Téléchargez le binaire compressé pour votre système d'exploitation à partir de la page de version et extrayez-le.
Alternativement, si le nœud est installé, clonez simplement ce référentiel à l'aide git
, puis effectuez npm install
. Après cela, vous pouvez suivre les exemples ci-dessous, en remplaçant toute référence à gmail_cleaner-linux
par node gmail_cleaner.js
.
Supprimez jusqu'à 15 000 e-mails dans l'étiquette 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.
Vérifiez le résultat à l'aide de la commande emails
:
$ ./gmail_cleaner-linux emails -l " CATEGORY_UPDATES "
No emails found.
Utilisation d'une requête Gmail pour cibler des e-mails spécifiques et examen d'échantillons avant de les supprimer :
$ ./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.
Utilisez --help
ou -h
pour voir les informations d'utilisation.
$ ./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
Vous pouvez également voir plus d'informations sur une commande spécifique comme ceci :
$ ./gmail_cleaner-linux delete -h
$ ./gmail_cleaner-linux emails -h
Dans le cadre du processus d'authentification, ce programme ouvrira par défaut temporairement le port 31338/tcp sur localhost. Vous pouvez utiliser un autre port en spécifiant la variable d'environnement GMAIL_CLEANER_PORT
, par exemple :
$ GMAIL_CLEANER_PORT=1337 ./gmail_cleaner.js labels
Ce programme utilise l'API Gmail, vous devez donc l'autoriser avant de pouvoir accéder à votre compte Gmail.
Lors du premier accès à Gmail, ce programme ne parviendra pas à localiser le fichier gmail_token.json
et affichera une URL d'autorisation. Ouvrez-le dans un navigateur et suivez les étapes pour autoriser le programme à accéder à votre compte.
Après cette première exécution, vous devez gérer le fichier gmail_token.json
avec précaution : toute personne y ayant accès aura également accès à votre compte Gmail. À moins qu'il ne soit désactivé avec le commutateur -s
, Gmail Cleaner affichera l'avertissement de sécurité suivant à chaque exécution.
** 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.
Notez que la suppression de l'accès à l'application depuis https://myaccount.google.com/u/2/permissions invalide simplement gmail_token.json
et ne peut donc plus être utilisé pour accéder à votre compte Gmail. "L'application" Gmail Cleaner n'a pas vraiment ou n'a pas besoin d'un composant côté serveur/cloud qui stocke le contenu de gmail_token.json
ou toute information sur votre compte. Si cela ne suffit pas, vous pouvez toujours créer votre propre « application » en suivant les instructions suivantes.
https://mail.google.com/
à la liste des étendues à autoriser (cette étendue est nécessaire à l'API batchDelete utilisée par gmail_cleaner
)../lib/client_id.json
.gmail_token.json
existant.Après cela, la prochaine fois que vous exécuterez le programme, il vous demandera d'autoriser votre propre application au lieu de celle par défaut.