Nach Mac OS Catalina Update – Mail App Suchfunktion ist kaputt

Das Update auf Mac OS Catalina lief bei mir eigentlich ohne Probleme durch, aber heute fiel mir dann auf, dass die Suchfunktion in der Mail App sich sehr komisch verhielt bzw. einfach kaputt war.

Mir war natürlich gleich klar, dass der Suchindex wahrscheinlich einen Treffer hatte, da ich die App ja trotzdem normal bedienen und Mails senden/empfangen konnte.

Um das Problem zu beheben, musste ich also den Suchindex der Mail App zurücksetzen und neu aufbauen lassen. Dazu sind folgende Schritte nötig:

  1. Mail App beenden
  2. Im Finder den Ordner ~/Library/Mail/V7/MailData öffnen (mit CMD+SHIFT+G)
  3. Alle Dateien, die mit „Envelope Index“ beginnen löschen (oder in einen Backup-Ordner schieben)
  4. Mail App wieder starten. Es empfängt euch ein Screen, der mitteilt, dass Mail sich selbst reparieren muss. Anschließend werden die Mails neu indiziert, in dieser Zeit ist Mail nicht benutzbar.

[Einzeiler] Dateien nach einem String durchsuchen, aber nur, wenn ein zweiter String nicht vorkommt

Sorry für die verwirrende Überschrift, aber anders kann ich es nicht in einen Satz zusammenfassen 😉

mit grep alle Dateien im aktuellen Ordner rekursiv durchsuchen

Ihr wollt in einem Ordner inkl. Unterordner alle Dateien nach einer Zeichenkette durchsuchen? Dann verwendet folgendes Kommando:

grep -ir "das will ich finden" ./*

Der Parameter “i” bewirkt, dass bei dem zu suchenden Begriff nicht auf die Groß-/Kleinschreibung geachtet wird, das “r” sorgt dafür, dass der zu durchsuchende Ordner auch rekursiv, also mit allen Unterordnern, durchsucht wird.

grep mit einem NOT verwenden

Wollt ihr nun noch nach Wort Nummer 1 suchen, aber Wort Nummer 2 soll nicht in der gleichen Zeile vorkommen? Dann kommt folgendes Kommando zum Einsatz:

grep -ir "das will ich finden" ./* | grep -iv "das soll nicht in der gleichen Zeile stehen"

Wie ihr seht, filtern wir das Ergebnis des ersten grep einfach nochmal mit grep, wenden aber den Parameter “v” an. Dieser bewirkt, dass grep sich genau umgekehrt wie sonst verhält – es werden also alle Zeilen angezeigt, die das gesuchte Wort NICHT enthalten.