Suche mit Fuzzy Finder

Schnüffelnase

In diesem Monat geht es im Open-Source-Tipp weiter mit nützlichen Tools für die Kommandozeile. Diesmal dreht sich alles um den Fuzzy Finder, kurz fzf. Diesen können Sie innerhalb einer Shell als interaktiven Filter verwenden und zusammen mit anderen Kommandozeilentools einsetzen.
Die Verwaltung der Mitarbeiterkonten ist das A und O in der Unternehmens-IT – sie bestimmt, ob die User problemlos arbeiten können und setzt gleichzeitig ... (mehr)

Wer viel auf der Kommandozeile arbeitet, der kennt natürlich das Konzept der Unix-Filter. Hierbei können Sie einzelne Tools miteinander kombinieren, sodass die Ausgabe eines Tools als Eingabe des nächsten dient. Möchten Sie beispielsweise in Erfahrung bringen, wie viele Prozesse auf Ihrem System aktuell aktiv sind, kombinieren Sie hierfür die beiden Tools ps und wc mit Hilfe einer Pipe miteinander:

ps -ef | wc -l

Fuzzy-Suche

Das gleiche Konzept lässt sich nun verwenden, um die Ausgabe von ps an das Tool fzf [1] weiterzuleiten, um den gewünschten Prozess sehr schnell mit Hilfe eines Fuzzy-Matching zu identifizieren:

ps -ef | fzf

Übergeben Sie also nun die Prozessliste an fzf, können Sie interaktiv in der Liste nach dem gewünschten Prozess suchen, indem Sie einfach anfangen, den Prozessnamen oder Teile hiervon einzutippen. Durch die Fuzzy-Suche, im Deutschen auch etwas umständlich als Unscharfe Suche [2] bezeichnet, zeigt fzf dann sämtliche Prozesse an, auf die die Suche passt. Dabei erscheinen die besten Ergebnisse natürlich zuerst in der Ergebnisliste, während weniger gute Matches weiter hinten in der Liste zu finden sind.

Haben Sie beispielsweise den Chrome-Browser installiert und tippen in der interaktiven fzf-Suche lediglich den String "oo" ein, erscheint der Prozess zwar in der Ergebnisliste, allerdings erst hinter sämtlichen "oom"-Prozessen. Starten Sie die Suche stattdessen mit dem Suchstring "goo", ist die Chance hoch, dass der Prozess direkt am Anfang der Liste steht.

Korrekte Syntax verwenden

Bei der Fuzzy-Suche lassen sich keine regulären Ausdrücke oder Wildcards verwenden. Stattdessen setzt fzf auf weitere Modi, die Sie nutzen können, um die Suche einzuschränken. Verwenden Sie den String "'goo",

...

Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023