Tool zur Suche nach Inhalten in .au3-Dateien

  • Da viele deutsche User:innen nicht, oder nur unregelmäßig, im englischen Forum aktiv sind, möchte ich hier ein kleines, aber feines Searchtool vorstellen (ist mit dem Autor abgesprochen) :

    Autor : Nine (aus dem EN-Forum)

    Download, Changelog und Thread : searching-specific-content-in-text-file-or-au3

    Das Programm ist im Wesentlichen selbsterklärend.

    Als Basisordner sind C:\Applications\AutoIt und C:\Program Files (x86)\AutoIt3\Include eingestellt. Wer möchte, kann dies im Quellcode anpassen/erweitern.

    Klickt man auf den Button Folder, dann erscheint eine Ordnerauswahl ausgehend von dem Verzeichnis, in dem sich das Tool befindet.

    Der Dateifilter ist per Default auf *.au3 eingestellt.

    Man kann dort aber auch z.B. *.txt, oder sogar mehrere Filter (Dateitypen), getrennt durch Semikolon, eintragen. Beispiel : *.au3;*.txt

    In Text to search gibt man den zu suchenden String an und kann nun den Button Search klicken. Das Tool durchläuft nun den gewählten Basisordner (Folder), sowie mögliche Unterverzeichnisse.

    Anschließend wird eine Liste aller Dateien angezeigt, die den gesuchten String enthalten.

    Klickt man auf einen Dateinamen, so werden alle Treffer innerhalb dieser Datei angezeigt (von mir im Screenshot orange umrandet).

    Mit dem Button Open kann die Datei im jeweils eingestellten Editor geöffnet werden.

    @Nine erhebt selbstverständlich nicht den Anspruch, professionelle Suchprogramme wie z.B. Agent Ransack zu ersetzen.

    Ich und viele andere User nutzen sein Tool aber gerne. Zudem ist der Quellcode ein gutes Anschauungsobjekt.

    Gruß Musashi

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

  • Musashi

    Das Tool verwende ich ja nun auch und ich habe es durchgetestet. TOP !
    Vielleicht, wenn es Nine erlaubt, kann ich es ja übersetzen.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

  • Das Tool verwende ich ja nun auch und ich habe es durchgetestet. TOP !
    Vielleicht, wenn es Nine erlaubt, kann ich es ja übersetzen.

    Ich bin mir sicher, dass Nine kein Problem damit hätte. Er hat sich im Quellcode ja nicht mal als 'Ersteller' angegeben.

    Ich hatte übrigens schon vor geraumer Zeit mit ihm über die Vorstellung im DE-Forum gesprochen. Deine Frage hat mich daran erinnert, dass auch endlich mal zu tun :) .

    Edit :

    Ich frage mich allerdings, ob eine Übersetzung, aufgrund der wenigen Sprachelemente. wirklich nötig ist. Search , Open und Select Folder sollte eigentlich von allen verstanden werden. Zudem habe ich die Arbeitsweise des Tools ja bereits beschrieben.

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    2 Mal editiert, zuletzt von Musashi (17. Dezember 2022 um 19:25)

  • Hi Musashi ,

    Danke für die Kurzvorstellung des Tools 🤝 . Auch wenn ich für solche Dinge i.d.R. nur noch VSCode nutze, schaue ich mir den Code von Nine mal etwas genauer an. Mich interessiert die Umsetzung der Liste bzw. das Füllen der Child-Daten usw. Mit solchen Controlls hatte ich schon ewig nichts mehr zu tun (zumindest nicht außerhalb vom Web/Browser).

    #anschauungsobjekt 👍

    Viele Grüße
    Sven

  • Hi Alina !

    Noch einmal zu :

    Vielleicht, wenn es @Nine  erlaubt, kann ich es ja übersetzen.

    Obwohl ich mir sicher war, dass @Nine damit keine Probleme hat, habe ich ihn gefragt. Schließlich möchten wir ja wissen, nicht nur vermuten ;) .

    Hier die Antwort von @Nine aus unserer PM (wie erwartet) :

    Zitat

    "I am happy someone likes my tool, feel free to let them know that they can do whatever they want with it. Just glad that the tool I personally use every day can help some others."

    (übersetzt)

    "Ich freue mich, dass mein Tool anderen gefällt. Du kannst sie gerne wissen lassen, dass sie damit machen können, was sie wollen. Ich freue mich einfach, dass das Tool, das ich persönlich jeden Tag benutze, anderen helfen kann."

    Alina :

    Einer Übersetzung steht also nicht im Wege :).

    Wir können den modifizierten Code dann ja dem Startbeitrag dieses Threads hinzufügen.

    Gruß Musashi

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

  • Das nenn ich mal internationale Zusammenarbeit....

    Musashi Bitte nicht schlagen.... Das Tool kann mit txt Formaten umgehen .... was müsste man tun, um dem Tool das verstehen von anderen Formaten beizubringen? Ich setze einige Suchtools ein - andererseits aber auch ein selteneres "Office" Packet - dessen Format kein Suchprogramm kann...da denke ich gerade an Aufbohren.....

    LG

    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Albert Einstein)

  • Das Tool kann mit txt Formaten umgehen .... was müsste man tun, um dem Tool das verstehen von anderen Formaten beizubringen?

    Wie erwähnt, habe ich das Tool nicht geschrieben (ich habe Nine lediglich bei Testen geholfen und 2, 3 Anregungen beigesteuert).

    Grundsätzlich können alle textbasierten Formate, also z.B. auch *.csv, *.pas usw., durchsucht werden.

    ... andererseits aber auch ein selteneres "Office" Paket - dessen Format kein Suchprogramm kann

    Kannst Du das Format, z.B. mit Notepad++, öffnen ?

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

  • Peter S. Taler Ich denke da musst du das dann etwas einbauen das entsprechend per Endung entweder normale Textverarbeitung macht oder (bei den Office Dateien z.B.) die Datei (und zwar jede einzelne) entpackt (Office-Dateien sind ja nur Zip.Dateien) und entsprechend durchsucht/verarbeitet wie bei der normalen Textverarbeitung. Das ganze dann natürlich wieder löschen und wieder von vorne.

    Wobei die zip.au3 das kann: (ich weiß gerade nicht was du dann als Ergebnis zurück bekommst):

    Code
    _Zip_SearchInFile($ZipFile, $SearchString) Search In each File of the Zip Archive. Required #include <Zip.au3>
  • Musashi

    Das mit Notepad++ geht zwar nicht - bringt mich aber auf ein paar andere Ideen. Danke dafür...

    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Albert Einstein)

  • In Dateien suchen (Alt+F7) mache ich am liebsten mit Total Commander...

    Bevor ich das kannte, habe ich es mit grep/egrep gemacht, das im Paket GnuWin enthalten ist:

    grep und egrep - Dateien rekursiv nach String durchsuchen

    Dateien rekursiv nach String durchsuchen Dateien rekursiv nach String durchsuchen

    Sucht man einen bestimmten String in einer Vielzahl an Dateien und Verzeichnissen könnten die folgenden Linux Befehle hilfreich sein.

    grep: durchsucht eine Datei nach einem Suchstring
    egrep: funktioniert wie grep, aber kann mit erweiterten regulären Ausdrücken umgehen
    find: sucht bestimmte Dateien und wendet Befehle auf diese an

    grep und egrep

    grep -r -i 'Suchstring' ./
    ./ das Verzeichnis, in dem die Dateien durchsucht werden sollen
    -r auch alle Unterverzeichnisse rekursiv nach 'Suchstring' durchsuchen
    -i Groß-/Kleinschreibung wird ignoriert

    Hat man als Suchstring einen erweiterten regulären Ausdruck, benutzt man einfach egrep.

    egrep -r -i 'Suchstring' ./

    find und grep

    Es gibt Linux Systeme, die das -r bei grep nicht unterstützen. Hier kann man sich mit find behelfen.

    find ./ -exec grep -i 'Suchstring' /dev/null {} \;

    Quelle: grep all files and sub-directories in a directory for a string

  • Bitnugger Es erstaunt mich immer wieder, wass der Total Commander so alles drauf hat. Brauchts ein Plugin oder kann er es von Haus aus?

    LG

    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Albert Einstein)