• Toolbox: Dateisuche mit Catfish

    Posted on November 12, 2012 by in open source news

    David Wolski





    Für die Suche nach Dateien bietet Linux mehrere effektive Programme für die Kommandozeile: find und das indexbasierende locate dürften die bekanntesten sein. Auf dem Desktop lassen sich diese komfortabel mit dem Frontend Catfish nutzen, das im Hintergrund die bewährten Konsolen-Suchwerkzeuge einspannt.




    Catfish arbeitet als Frontend für die bewährten Konsolentools find und locate.

    Vergrern



    Catfish stattet den Desktop mit einer unkomplizierten Suchmaske aus, um Dateien anhand des Namens oder Pfads zu finden. Ausgewachsene Desktop-Suchmaschinen wie Recoll macht das in Python geschriebene Programm dabei keineswegs arbeitslos, denn Catfish kann weder die Metadaten heranziehen, noch eine Volltextsuche im Dateiinhalt durchführen. Die eigentliche Arbeit erledigen Kommandozeilen-Tools im Hintergrund, wobei Catfish die Suchmethoden von find, locate, aber auch von Tracker, Strigi, Doodle und dem exotischen Pinot nutzen kann.

    Die wichtigsten Suchwerkzeuge für Catfish sind find und locate, zumal die GNU-Version des klassischen Unix-Tools find sowieso auf allen Linux-Systemen vorhanden ist. Ebenfalls Teil der GNU Findutils ist das Programm locate, das auf großen Dateisystemen ein schneller Ersatz für find ist, da es mit einem vorbereiteten Index arbeitet. Unter Debian, Ubuntu sowie Fedora ist locate im Paket „mlocate“ untergebracht, bei OpenSuse in „findutils-locate“. Damit locate etwas findet, muss zunächst die Datenbank mit root-Rechten oder mit vorangestelltem sudo mit dem Befehl updatedb aufgebaut werden.

    Catfish

    Bilderstrecke, 4 Bilder

    Dateien suchen und finden

    Catfish bietet klare Vorteile gegenüber einer Suche in der Shell: die Präsentation der Suchergebnisse und das Zusammenspiel mit verknüpften Programmen zu den gefundenen Dateien. Das Fenster mit den Suchergebnissen dient gleichzeitig als Dateibrowser, so öffnet ein Doppelklick auf einen gefundenen Eintrag die Datei mit der verknüpften Standard-Anwendung der Desktop-Umgebung. Über den Eintrag „Springe zu“ im Kontextmenü zeigt der Dateimanager außerdem das Verzeichnis der Datei an.

    Installation und Versionsunterschiede

    In den Repositories von Debian, Ubuntu, Fedora, Arch und Gentoo steht Catfish zur Installation über den jeweiligen Paketmanager bereit. Auch OpenSuse-Nutzer müssen nicht darben, ein fertiges RPM ist über den Build Service zu finden. Die meisten Distributionen bieten Catfish noch in der bewährten Version 0.3.x an, die auf GTK+ 2 basiert. Eine aktuellere Version nutzt GTK+ 3 und bietet eine neue, reduzierte Oberfläche, die Optik und Bedienkomfort auf Kosten der Funktionalität in den Vordergrund rückt. Die meisten Anwender dürften mit dem bewährten Catfish 0.3.2 deshalb besser bedient sein.

    Nach dem Start präsentiert Catfish in der älteren Version ein schlichtes, zweigeteiltes Programmfenster. Das Eingabefeld auf der linken Seite nimmt den Suchbegriff entgegen, bietet einige wenige Suchoptionen und erlaubt die Auswahl von Startverzeichnis und Suchmethode. Auf der rechten Seite zeigt Catfish nach einer Suche die gefundenen Dateien als Liste. Ein Doppelklick öffnet die jeweilige Datei mit der zugehörigen Anwendung, wenn für den MIME-Typ eine definiert ist. Per Rechtsklick und “Kopieren” lässt sich der Dateipfad in die Zwischenablage befördern, mit „Springe zu“ im eingerichteten Dateimanager öffnen, oder die ganze Liste mit „In Datei Speichern“ als Textdatei ablegen. Die voreingestellte Suchmethode ist find, der Startparameter „-method“ kann aber auch ein anderes Tool verwenden, beispielsweise locate:

    catfish --method=locate




    Abgemagert: Die neue Version von Catfish bietet weniger Optionen und zeigt ein verkleinertes Programmfenster zur Suche.

    Vergrern



    Ein anderes Bild zeigt Catfish ab Version 0.4.x, das in Ubuntu 12.10 bereits in den Paketquellen liegt. Hier startet der Aufruf von Catfish zunächst ein verkleinertes Programmfenster, das nur die Suchmaske anzeigt und sich erst nach erfolgtem Suchlauf vergrößert und die Ergebnisse auflistet. Die erste Suche führt Catfish stets mit locate aus und bietet anschließend die Möglichkeit, noch einen intensiven Suchlauf mit find zu starten. Die Suchoptionen zeigt ein Klick auf das Zahnrad-Symbol rechts in der Menüleiste. Eine manuelle Auswahl der Methode gibt es hier nicht mehr – ein Manko, zumal der Startparameter „–method“ in der vorliegenden Version aus den Ubuntu-Repositories keine Wirkung zeigt.

    Suchoptionen und reguläre Ausdrücke

    Standardmäßig ignoriert Catfish Groß- und Kleinschreibung bei Suchbegriffen und gibt alle passenden Dateinamen aus sowie Dateien, die in einem gleichnamigen Verzeichnis liegen. Um nach der exakten Schreibweise eines Namens zu suchen, dient die Option „Genaue Übereinstimmung“. Die Suche nach „catfish“ wird dann beispielsweise keine Fundstellen mit „Catfish“ im Namen liefern.




    Reguläre Ausdrücke: Catfish kann mit den gleichen Suchmustern umgehen, die auch find und locate unterstützen.

    Vergrern



    Wie auf der Kommandozeile stehen auch im Suchfeld von Catfish reguläre Ausdrücke und Wildcards zur Verfügung, sodass sich nicht nur nach Namen, sondern auch nach Mustern suchen lässt. Dabei funktionieren in Catfish alle Ausdrücke, die auch in den GNU Findutils zu finden sind. Eine vollständige Dokumentation bietet www.gnu.org. Die Eingabe von catfi? sucht beispielsweise nach dem Teilbegriff „catfi“ und *.jpg sorgt dafür, dass das Programm alle JPG-Dateien mit entsprechender Dateiendung auflistet. Komplexe Muster stehen wie bei find auf der Kommandozeile über Operatoren zur Verfügung: Intervalle lassen sich mit eckigen Klammern definieren, etwa mit catfis[a-z].

    Beim Umschalten der Suchmethode zu locate ändern sich auch die Suchoptionen: Zum Einen listet locate keine Verzeichnisinhalte auf, wenn der Verzeichnisname den Suchbegriff enthält, da nur der Dateiname verglichen wird. Zum anderen gibt es in diesem Modus die zusätzliche Suchoption „Volltextsuche“, bei der sich wiederum der Suchbegriff auf den gesamten Dateipfad ausdehnen lässt.

    Ältere Version selbst kompilieren




    Ältere Version: Das ältere Catfish 0.3.2 lässt sich auch unter Ubuntu 12.10 mit wenig Aufwand kompilieren.

    Vergrern



    Catfish ab Version 0.4.0 mit GTK+ 3 sieht zwar schick aus, doch die ältere Version mit manueller Auswahl der Suchmethode ist einfach besser zu bedienen. Bisher bieten nur Ubuntu und seine Derivate das neue Catfish an. Aber auch hier lässt sich der Vorgänger verwenden, indem man Catfish 0.3.2 selbst kompiliert. Die eventuell über den Paketmanager bereits installierte, neuere Version von Catfish sollte dann entfernt werden. Die Voraussetzungen zum Kompilieren sind PyGtk2, Glade2 und python-xdg. Mit dem Befehl

    sudo apt-get install libglade2-0 python-gtk2-dev python-xdg

    sind die Abhängigkeiten schnell nachinstalliert. Der Quellcode von Catfish findet sich auf der Projekt-Webseite des Entwicklers. Interessant ist hier der zweite Download-Link, der zum TAR.GZ-Archiv von Catfish 0.3.2 führt. Anschließend wechselt man in der Shell ins entpackte Verzeichnis des Quellcodes, wo sich die gewünschte Version von Catfish dann mit dem Dreisatz

    ./configure
    make
    sudo make install

    kompilieren und einrichten lässt.

    Fazit: Praktische Ergänzung

    Die Kombination aus grafischer Oberfläche und bewährten Kommandozeilentools erspart Desktop-Anwendern einige Mühe, die Suchergebnisse aus einem Terminal-Fenster in ein Programmfenster zu bringen. Deutlich nützlicher als die aktuelle Version von Catfish ist allerdings die ältere Version 0.3.2, die erfreulicherweise bei den meisten Distributionen noch in den Paketquellen liegt. Aber auch das Kompilieren ist kein großes Problem, da es sich bei Catfish um ein kompaktes Python-Tool mit wenigen Abhängigkeiten handelt.

    Mit seinem überschaubaren Funktionsumfang ist Catfish das passende Programm für schlanke Linux-Desktops in der Gewichtsklasse eines Lxde, Xfce oder Openbox. Denn wer bereits einen ausgewachsenen Dateimanager wie Nautilus, Dolphin oder Krusader verwendet, dem steht eine Dateisuche bereits über deren Funktionsumfang zur Verfügung. Bei schmalen Dateimanagern wie Thunar oder Pcmanfm fehlt eine solche Suchfunktion, daher bietet sich Catfish als nützliche Ergänzung an.

    Article source: http://www.heise.de/open/artikel/Toolbox-Dateisuche-mit-Catfish-1745966.html/from/atom10

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

WP-Backgrounds Lite by InoPlugs Web Design and Juwelier Schönmann 1010 Wien