Espie rapidamente e exclua permanentemente e-mails no Gmail que correspondam a rótulos e consultas de pesquisa específicos.
Ele foi criado para excluir mais de 120 mil mensagens que a interface da web do GMail e o IMAP não conseguiram lidar (eles apenas expiraram). Além disso, eu também precisava de um projeto para testar várias ferramentas de CI.
Baixe o binário compactado para o seu sistema operacional na página de lançamento e extraia-o.
Alternativamente, se você tiver o node instalado, basta clonar este repositório usando git
e fazer npm install
. Depois disso você pode seguir os exemplos abaixo, substituindo todas as referências a gmail_cleaner-linux
pelo node gmail_cleaner.js
.
Exclua até 15 mil e-mails no rótulo 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.
Verifique o resultado usando o comando emails
:
$ ./gmail_cleaner-linux emails -l " CATEGORY_UPDATES "
No emails found.
Usando a consulta do Gmail para direcionar e-mails específicos e revisar exemplos antes de excluí-los:
$ ./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.
Use --help
ou -h
para ver informações de uso.
$ ./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
Você também pode ver mais informações sobre um comando específico como este:
$ ./gmail_cleaner-linux delete -h
$ ./gmail_cleaner-linux emails -h
Como parte do processo de autenticação, este programa, por padrão, abrirá temporariamente a porta 31338/tcp no host local. Você pode usar outra porta especificando a variável de ambiente GMAIL_CLEANER_PORT
, por exemplo:
$ GMAIL_CLEANER_PORT=1337 ./gmail_cleaner.js labels
Este programa usa a API do Gmail, portanto, você deve autorizá-lo primeiro antes de poder acessar sua conta do Gmail.
No primeiro acesso ao Gmail, este programa não conseguirá localizar o arquivo gmail_token.json
e retornará para exibir um URL de autorização. Abra-o em um navegador e siga as etapas para autorizar o programa a acessar sua conta.
Após a primeira execução, você deve manusear o arquivo gmail_token.json
com cuidado: qualquer pessoa que tenha acesso a ele também terá acesso à sua conta do Gmail. A menos que seja desligado com a opção -s
, o Gmail Cleaner exibirá o seguinte aviso de segurança a cada execução.
** 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.
Observe que remover o acesso ao aplicativo de https://myaccount.google.com/u/2/permissions apenas invalida gmail_token.json
, portanto, ele não poderá mais ser usado para acessar sua conta do Gmail. O "aplicativo" Gmail Cleaner realmente não tem nem precisa de um componente de servidor/nuvem que armazene conteúdo de gmail_token.json
ou qualquer informação sobre sua conta. Se isso não for suficiente, você sempre pode criar seu próprio “aplicativo” usando as instruções a seguir.
https://mail.google.com/
à lista de escopos a serem autorizados (esse escopo é necessário pela API batchDelete usada por gmail_cleaner
)../lib/client_id.json
.gmail_token.json
existente.Depois disso, na próxima vez que você executar o programa, ele solicitará a autorização do seu próprio aplicativo em vez do aplicativo padrão.