AutoIt Mehrere TXT Dateien durchsuchen
Hallo zusammen,
Ich habe mir ein Script gebastelt das den User auffordert einen Suchstring einzugeben der in einer Datei gesucht werden soll. Ist das Ergebniss Positiv erscheint eine MSGBox das ein Treffer erfolgt ist mit Dateiname und in welcher Zeile der Suchstring steht. Das ganze sieht so aus:
Mein Problem ist nun das ich ein Verzeichnis mit mehreren Unterverzeichnissen habe in denen mehrere TXT Dateien deren Name ich nicht kenne durchsucht werden müssen. Kann man so etwas irgendwie bewerkstelligen?
Desweiteren sollte die Zeile in der der Treffer erfolgt ist komplett in der MSGBox ausgegeben werden.
Für eure HIlfe vorab besten Dank
Ich habe mir ein Script gebastelt das den User auffordert einen Suchstring einzugeben der in einer Datei gesucht werden soll. Ist das Ergebniss Positiv erscheint eine MSGBox das ein Treffer erfolgt ist mit Dateiname und in welcher Zeile der Suchstring steht. Das ganze sieht so aus:
#include <File.au3>
$Datei1 = '123.txt'
$Suchstring = InputBox("Info", "Suchstring eingeben:", "", "")
For $i=0 to _FileCountLines($Datei1)
If FileReadLine($Datei1, $i)=$Suchstring Then
MsgBox(0,"Melde", "POSITIV: Zeile " & $i & " in Datei " & $Datei1 & "")
EndIf
Next
MsgBox(0,"Melde", "Suchvorgang abgeschlossen")
Mein Problem ist nun das ich ein Verzeichnis mit mehreren Unterverzeichnissen habe in denen mehrere TXT Dateien deren Name ich nicht kenne durchsucht werden müssen. Kann man so etwas irgendwie bewerkstelligen?
Desweiteren sollte die Zeile in der der Treffer erfolgt ist komplett in der MSGBox ausgegeben werden.
Für eure HIlfe vorab besten Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 171144
Url: https://administrator.de/contentid/171144
Ausgedruckt am: 17.11.2024 um 07:11 Uhr
1 Kommentar
Hallo LordKingPin,
es ist zwar schon eine Weile her wo ich mit Autoit gearbeitet habe, aber
es sieht mir so aus, als sind es Deine ersten Schritte mit Autoit, denn anstatt $Suchstring würde ich die Funktion StringInStr verwenden, denn das gesuchte Wort könnte ja ein Teilstring von der Zeile seien und nicht die Komplete Zeile und bei mehreren Treffern möchte man ja nicht mehrere MsgBox haben. Oder? Besser wäre vielleicht eine _GUICtrlListView Box im GUI-Fenster (GUICreate).
Oder ist es nur ein Teil vom Skript.
Reicht Dir die normale Windows Suche nicht, oder möchtest Du mit Autoit mehr erreichen?
Ps.:Eine gute Anlaufstelle ist auch http://www.autoitscript.com und http://autoit.de.
Gruß René
es ist zwar schon eine Weile her wo ich mit Autoit gearbeitet habe, aber
es sieht mir so aus, als sind es Deine ersten Schritte mit Autoit, denn anstatt $Suchstring würde ich die Funktion StringInStr verwenden, denn das gesuchte Wort könnte ja ein Teilstring von der Zeile seien und nicht die Komplete Zeile und bei mehreren Treffern möchte man ja nicht mehrere MsgBox haben. Oder? Besser wäre vielleicht eine _GUICtrlListView Box im GUI-Fenster (GUICreate).
Oder ist es nur ein Teil vom Skript.
Reicht Dir die normale Windows Suche nicht, oder möchtest Du mit Autoit mehr erreichen?
Ps.:Eine gute Anlaufstelle ist auch http://www.autoitscript.com und http://autoit.de.
Gruß René