Suchen Sie nach E-Mails, die NUR zu dem angegebenen Label gehören

14

Wie suche ich nach E-Mails, die nur zu einem bestimmten Label gehören und zu keinem anderen Label gehören?

Midhat
quelle
Leider gibt es kein exklusives Flag, das wirklich scheiße ist. Insbesondere möchte ich alle E-Mails finden, die sich in label: web und NUR in diesem Label befinden. Momentan gibt es keine solche Möglichkeit, außer dem Hinzufügen von -label: other_label -label: another_label und die Liste geht weiter ... für die Hacker unter euch - ja, schnappt euch eine flache Liste eurer Labels und schreibt ein einfaches Skript, um den Befehl zu generieren, den ihr braucht ...
Nir Pengas

Antworten:

9

Mit der können Sie nach E-Mails suchen, die zu einem bestimmten Label gehören

label:mylabel <include search terms here>

Syntax, und Sie können Nachrichten von einer bestimmten Beschriftung mit der Option ausschließen

-label:mylabel <include search terms here>

Syntax.

Was Sie wollen, können Sie also mit einer Kombination aus beiden erreichen. Sie müssen eine Suchzeichenfolge erstellen, die ein "-label: mylabel" für alle von Ihnen definierten Bezeichnungen enthält, mit Ausnahme derjenigen, die Sie suchen, wie folgt:

label:thisisthelabelimlookingfor -label:label1 -label:label2 ... <include search terms here>
fretje
quelle
3
Ja, ich habe in den gleichen Zeilen gedacht, aber ich dachte, vielleicht gibt es einen besseren Weg, mit viel weniger Tipparbeit. Ich habe ungefähr 100 Labels definiert :(
Midhat
Kann ich eine einfache Klartextliste aller meiner Etiketten erhalten?
Midhat
@ Midhat: Gute Frage. Sie können mit imap auf Ihr Konto zugreifen und eine Liste aller Ihrer Labels erhalten, wie in dieser Antwort auf eine Stapelüberlauf-Frage gezeigt . Aber es könnte bessere Wege geben.
Fretje
Ich habe meine Klartext-Label-Liste aus den Offline-Google Mail-Optionen erhalten. Es werden alle Bezeichnungen durch Kommas getrennt aufgelistet.
Midhat
Auch der -Label-Operator hat nicht für mich gearbeitet
Midhat
2

Nicht der beste Weg der Welt, aber nutzen Sie die eingebauten Etiketten zu Ihrem Vorteil. Dies setzt voraus, dass Sie sich nicht für Labels interessieren, die von GMail verwendet werden, wie z. B. soziale Netzwerke, Updates, Werbeaktionen oder Foren. Diese Labels gelten nicht als USER LABELS (Mein Beispiel-User-Label: Foo)

  1. Gehe zu Alle Nachrichten - Alle Nachrichten auswählen und wähle dann "Alle XXX-Nachrichten in allen Nachrichten auswählen" aus (gilt für jede E-Mail, die du hast)
  2. Verwenden Sie das Beschriftungsmenü, um eine der GMail-Beschriftungen (oben) abzuwählen. Ich benutze normalerweise Promotions.
  3. gehe zu dem Label, das du suchen möchtest (Foo)
  4. Alles auswählen und dann "Alle XXX-Nachrichten in (Foo) auswählen"
  5. Verwenden Sie das Label-Menü, um das gelöschte GMail-Label aus Schritt 2 (Werbeaktionen) auszuwählen und das aktuelle Label abzuwählen (Foo).
  6. Jetzt haben Sie alle Ihre (Foo) gekennzeichneten Nachrichten in das Label (Promotions) geändert - ein Label, das KEIN Benutzerlabel ist
  7. gehe zu (Promotions) - füge der Suche hinzu: 'has: nouserlabels'
  8. Jetzt haben Sie eine Liste von E-Mails, die NUR als (Foo) gekennzeichnet waren.
  9. Gehe zu (Werbeaktionen) - wähle Alle und dann "Alle XXX-Nachrichten in (Werbeaktionen) auswählen".
  10. Verwenden Sie das Beschriftungsmenü, um (Foo) zu allen Nachrichten hinzuzufügen. Alles ist wieder normal
Bob
quelle
0

Wenn Sie Nachrichten in Google Mail filtern, werden diese standardmäßig in der Konversationsansicht konfiguriert. In der Einstellung für die Konversationsansicht werden E-Mails mit demselben Betreff wie eine einzelne konversationsbasierte Nachricht zusammengefasst.

Wenn Sie also die gefilterten Nachrichten auswählen oder darin navigieren, werden in den Nachrichten mehrere Bezeichnungen angezeigt, die für die angegebenen Kriterien nicht relevant sind.

Welches wird angezeigt als:

Subject: Hello World (2) <label:a> <label:b>
    Message 1 <label:a>
    Message 2 <label:b>

Um dies zu beheben, gehen Sie zu Settings -> General -> Conversation viewAuswählen Conversation View Offund klicken Sie dann auf Änderungen speichern. Sobald die Seite aktualisiert wurde, werden alle Konversationen in einzelne Nachrichten aufgeteilt.

Welches wird nun angezeigt als:

Subject: Hello World <label:a>
Subject: Hello World <label:b>

In den meisten Fällen sollte dies ausreichen, um Nachrichten nach einer einzelnen Bezeichnung zu filtern.

Dies hat jedoch den negativen Effekt, dass die Gruppierung von weitergeleiteten und auf E-Mails antwortenden Nachrichten aufgehoben wird.

Die Einstellung kann jedoch frei geändert werden, ohne dass die Konversationsgruppierungen verloren gehen, wenn die Konversationsansicht wieder aktiviert wird.


Wie bei der Suche mit den Filtern; Eines der Probleme sind die Modifikatoren von AND / OR im Kontext der Werte.

  • Um OR innerhalb einer Gruppe von Werten anzugeben, verwenden Sie geschweifte Klammern: {a b}
    • Übersetzt: a OR b.
  • Um UND innerhalb einer Wertegruppe anzugeben, verwenden Sie Klammern (a b)
    • Übersetzt: a AND b.
  • Um einen NOT-Operator für einen Wert anzugeben, verwenden Sie das Minus-Symbol -a
    • Übersetzt: NOT a.

Auf diese Weise können Sie sie in Kombination verwenden , mit anderen Betreibern wie label:, from:, to:usw.

Eine Liste der in Google Mail verfügbaren Operatoren und Modifikatoren finden Sie auf der Website https://support.google.com/mail/answer/7190

Im Allgemeinen würde ein Filter wie label:a -label:x -label:yzu übersetzen Has label a and does not have label x and y.

Dies bedeutet, dass Nachrichten mit der Bezeichnung a gefunden werden, bei denen entweder die Bezeichnung x oder y fehlt:

Found: 
    Subject: Hello World <label:a>
    Subject: Hello World <label:a> <label:x> 
    Subject: Hello World <label:a> <label:y>

Not Found:
    Subject: Hello World <label:a> <label:x> <label:y>

Um eine Gruppe von Beschriftungen zu filtern, müssten Sie einen Filter wie: verwenden label:{x y z}, um Nachrichten mit den Beschriftungen einzuschließen x, yoder z.

Um eine Gruppe von Etiketten auszuschließen, würden Sie einen Filter wie verwenden: -{label:{a b c}}um alle Nachrichten auszuschließen , die die Etiketten haben a, boder c.

So kombinieren die Filter es würde wie folgt aussehen: label:{x y z} -{label:{a b c}}.

Was bedeutet: Has labels x, y, or z AND does NOT have labels a, b, or c

Sie können auch NOT-Gruppierungen mit zusätzlichen Operatoren kombinieren -{label:{a b} from:{domain.com}}, zdoes NOT have labels a OR b OR from domain.com

Besondere Überlegung; Wenn Sie nach Werten suchen, die Leerzeichen enthalten, setzen Sie den Wert in Anführungszeichen "...", um eine genaue Übereinstimmung sicherzustellen. Andernfalls werden die Leerzeichen je nach Gruppierungskontext als ANDoder als ORModifikator betrachtet (Verwendung von geschweiften Klammern oder Klammern).

So label:{My Label}soll es sein label:{"My Label"}.


Um also die ursprüngliche Frage zu beantworten und Nachrichten zu finden, die nur ein einzelnes Label My Labelund keine anderen enthalten, würden Sie Folgendes verwenden:label:"My Label" -{label:{"label 2" "label 3"}}

Found:
   Subject: Hello World <label:My Label>

Not Found:
   Subject: Hello World <label:label 2>
   Subject: Hello World <label:label 3>
   Subject: Hello World <label:My Label> <label:label 2>
   Subject: Hello World <label:My Label> <label:label 3>
   Subject: Hello World <label:My Label> <label:label 2> <label:label 3>

Leider müssten Sie alle ausgeschlossenen Bezeichnungen explizit definieren, da es keinen Operator gibt, der nur die Bezeichnung angibt. Denken Sie daran, dass Sie die Konversationsansicht deaktivieren möchten, um die Gruppierung der Nachrichten zu verhindern, die auch die ausgeschlossenen Bezeichnungen enthalten.

fyrye
quelle