MCS Search Desktopsuche mal einfach
Inhaltsverzeichnis Einleitung...3 Installation...3 Einrichtung...3 Benutzung...4 Suche...5 Erweiterte Suche...6 Gleiche Dateien finden...7 Menüpunkte...7 Datei...7 Index...8 Protokoll...8 Hilfe...8
Einleitung Nicht schon wieder eine Desktopsuche! Doch schon wieder eine. Und warum? Weil ich eine Fingerübung für Java 7 brauchte. Aha, und was kann die jetzt besonders gut? Dokumente finden?! Scherz beiseite, jetzt kommt ein bisschen was für Programmierer. Wen's nicht interessiert einfach überspringen. Warum denn jetzt noch so eine Suche? Primäres Ziel war es eigentlich Dubletten auf der Festplatte zu finden, also Dateien gleichen Inhaltes. Also hab ich das ganze gleich mal als Fingerübung für Java 7 benutzt. In Java 7 wurde u.a. der nio Paket erweitert. In diesem Projekt hab ich mich mit den Filesystem Watchern und den neuen TreeWalkern beschäftigt. Weiterhin verwende ich die aktuellen Packages von Apache-Tika, Apache Lucene, Apache Common Configuration, Log4j und dem Swing Application Framework. Und natürlich den Launch4j zur exe Generierung. Ich hätte mich ja auch noch gerne mit Simple XML Framework beschäftigt, aber leider brauchte ich das in der Anwendung nicht. :-( Für den Otto-Normalanwender: diese Desktopsuchengine kann Dokumente finden, und zwar fast belibiger Art. Und zwar nicht nur anhand des Dateinamens, auch der Inhalt (soweit möglich) wird analysiert. Folgende Dateiformate können inhaltsmäßig analysiert werden: http://tika.apache.org/1.0/formats.html Und als kleines Bonbon findet es sogar gleiche Dateien auf der Platte. Installation Keine, ja richtig gehört, einfach in ein Verzeichniss seiner Wahl kopieren und fertig. Allerdings braucht das Programm Schreibzugriff einerseits auf das Verzeichniss in dem es sich befindet und andererseits auf das Verzeichniss, wo es seine Daten ablegt. Einrichtung Beim ersten Start des Programm aus einem neuen Verzeichniss öffnet sich der Einstellungsdialog beim zu indexierender Pfad wird mit dem Ordnerknopf ein Ordner ausgewählt. Mit dem Plus Knopf kann dieser Ordner in die Liste der zu indexierenden Pfad übertragen werden. (Indexpfad)
Mit dem Minus Knopf kan ein selektierter Pfad wieder aus der Liste gelöscht werden. Bei Datenpfad ist ein Pfad für die Ablage der Suchdaten einzugeben. Hier legt das Programm seine Suchdaten ab. auto. Indexierung starten: Nach dem Start des Programmes wird sofort ein Indexupdate gestartet und somit alle Änderungen seit dem letzten Start übertragen. Verzeichnisüberwachung starten: startet die automatische Verzeichnisüberwachung, während das Programm läuft. Alle Änderungen am Dateisystem werden automatisch übernommen. (Auf bestimmten Rechner kann diese Überwachung zu Problemen führen.) Nach dem OK werden die Angaben gespeichert und der neue Index erzeugt. (Je nach Größe des Pfades kann das einige Zeit dauern) Benutzung Über den Fortschritt gibt der untere Laufbalken informationen, während oben die Anzahl der zu indexierenden Dateien steht. Hinweiß: Es werden grundsätzlich immer alle Dateien indiziert, Ausnahmen bilden nur Dateien und Pfad die mit einem Punkt beginnen. (z.b..svn oder.htaccess ) Diese Dateien werden ignoriert, bzw. bei Pfaden mit Punkt werden alle Dateien in diesem Pfad ignoriert. Der Indexlauf kann jederzeit über den -Knopf neu gestartet werden. Was aber während der Laufzeit des Programmes nicht notwendig ist. Solange das Programm läuft, werden alle Änderungen an Dateien direkt übernommen.
Suche Gesucht wird direkt über das Suchfeld. [Enter] bzw. -Knopf lösen die Suche aus. Es reicht aber auch aus, einfach eine halbe Sekunde nach der Eingabe zu warten. Auch dann wird automatisch die Suche ausgelöst. Gefunden werden alle Dateien die das Suchwort enthalten, sei es im Pfad oder im reinen Text. Natürlich kann ein Wort in einem Text nur gefunden werden, wenn dieses auch als Text zur Verfügung steht. Bei den Officeformaten ist das normal, bei PDF Dateien kann es sein, daß die Schrift tatsächlich als Linien gespeichert sind. Bei Grafikformaten wie JPG, BMP (also keine Vektorformate) kann man natürlich keine Texte finden. Dazu müßte man ja eine OCR machen. Allerdings findet die Suche auch Texte die in den Eigenschaften verborgen sind. Z.B. bei JPG- oder MP3-Formaten.
Ein Doppelclick auf die gefundene Datei öffnet diese. Im Kontextmenü gibt es noch die Möglichkeiten, diese Datei zu löschen und sich den beinhaltenden Ordner anzeigen zu lassen. Beim löschen nicht wundern, z.z. Muss damit sich das Löschen auch in dem Programm auswirkt, einmal der Punkt Index säubern aufgerufen werden. Erweiterte Suche Über den -Knopf kann die erweiterte Suche aufgerufen werden. Wird dann der OK-Knopf gedrückt, wird zunächst der Suchausdruck generiert und ins Suchefeld eingetragen. Dann wird die Suche ausgelöst. Dadurch kann man sich mal die Suchsyntax anschauen, um sich selber kompliziertere Suchausdrücke zu erzeugen. Als kleine Anleitung kann auch die Dokumentation der Lucene-Engine dienen. (http://lucene.apache.org/java/3_5_0/queryparsersyntax.html) Folgende Felder kann man zur Suche benutzen: FULLTEXT: Das Volltextfeld. Hier sind alle Wörter enthalten. Stichwörter Volltext der Datei, Datum, Pfadinhalte, Größe und überhaupt eben alles KEYWORDS: Bilden sich aus dem Pfad und dem Dateinamen. Jeder Ordner bildet ein Stichwort. DATE: Das Dateidatum im Festformat yyyymmddhhmmss (yyyy 4-stelliges Jahr, mm Monat mit führender Null, dd Tag mit führender Null, hh Stunden, MM minuten, ss Sekunden) In diesem Feld ist eine Bereichssuche sinnvoll möglich. z.b. findet 20110101 TO 20111231 alle
Dokument aus dem Jahr 2011. (Ja, die Zeiten können auch weggelassen werden.) PATH: Pfad und Dateiname. Je nach Betriebssystem entweder mit / (Unixe) oder mit \ (Windows) SIZE: Dateigröße, wichtig ist hier das Festformat: 0000000000000000037 sowohl für die normale Suche wie auch für die Bereichssuche. Es gibt noch 2 weitere Felder, die aber von geringerer Bedeutung sind. MIMETYPE: hier steht der Mimetype der Datei drin MD5, ID: Diese sind nur für die interen Verwendung wichtig.
Gleiche Dateien finden Beim Menüpunkt gleiche Dateien finden werden alle Dateien im Index kontrolliert, ob diese identisch sind. Dabei wird ein MD5 Hash verwendet. Nach dem Suchlauf wird die Registerkarte Dupes aktiviert. Auf der linken Seite befinden sich die Dateinamen der ersten Dateidubletten. Wird eine davon angeklickt, werden die gleichen Dateien auf der rechten Seite angezeigt. Der Pfad wird als Popup angezeigt. Mit dem Kontextmenü kann eine Datei gelöscht werden, bzw. den beinhaltenden Ordner angezeigt werden. Menüpunkte Datei gleiche Dateien suchen: sucht im gesamten Index nach Dateien mit gleichem Inhalt. (Das war mal der ursprüngliche Zweck des Programmes. Einstellungen: Ruft den Einstellungsdialog vom Programmstart auf. Hashes exportieren: ist eine Funktion nur für mich... Beenden: na was wohl...
Index Index update: startet einen neuen Indexlauf. Index säubern: räumt den Index auf. Dateien, die auf der Festplatte schon gelöscht sind, aber noch im index enthalten sind, werden gelöscht. Auch doppelt indexierte Dateien werden gelöscht. Index optimieren: Optimiert den Index. Dadurch ist eine schnellere Suche möglich. Index löschen: löscht den gesamten Index. Protokoll Logdateien löschen: Löscht alle Logdateien aus dem.log Verzeichniss. In diesen Dateien werden alle Informationen, die das Programm auch in dem Textfenster Logs ausgibt, mit geschrieben. Hilfe WK Musik: Startet den Browser mit meiner Homepage. Über: Kleiner Infodialog mit den wichtigsten Informationen über das Programm. So das war's erstmal. Bei Fragen, fragen.