Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Batch Datei, Wort in unbekannter Text Datei suchen .

asoke / 9 Antworten / Baumansicht Nickles

Ich möchte mittels “batch “ ein Wort, das möglicherweise öfters vorkommt, in einer unbekannten Datei (Excel oder Word) suchen, aber nicht nur das Wort sondern die entsprechende Zeile in einer separaten Logfile (Datum) protokollieren. Ist das möglich ??
Ich habe mal so angefangen:

findstr /i "wort" *.xlr >nul && @echo "Wort" >>%date%.txt
oder
find "wort" *.xlr && echo Gefunden! >>c:\%date%.txt

Es klappt aber nicht ganz, denn es wird zwar eine Text Datei erstellt, nicht aber mit dem gewünschten Inhalt.
Vielleicht kann mir jemand helfen.

bei Antwort benachrichtigen
peterson asoke „Batch Datei, Wort in unbekannter Text Datei suchen .“
Optionen

Du mußt sicherlich noch ein paar Parameter benutzen.
findstr

X = gibt Zeilen aus, dei vollkommen übereinstimmen.
N = gibt die Zeilennummer aus

Dann sieht es so aus mit den Winklen:
echo "text" > Zieldatei.txt (erstellt die Datei)
echo "nächster Text" >> Zieldatei.txt (hängt an die Datei an)

bei Antwort benachrichtigen
asoke peterson „Du mußt sicherlich noch ein paar Parameter benutzen. findstr X gibt Zeilen aus,...“
Optionen

Hallo,
danke für die Antwort.
mit der Textausgabe, das klappt wohl. Steht aber jedesmal was anderes drin.
"text" > Zieldatei.txt (erstellt die Datei)
echo "nächster Text" >> Zieldatei.txt (hängt an die Datei an)

Könntest Du mir das mit "x=" und "n=" etwas genauer erklären.
Beispiel:
Ich suche irgendwo auf dem Rechner das Wort Juli 2008 in einer unbekannten Datei (z.B. excel).
Nun möchte ich alle Dateien mit Juli 2008 und die Zeilen mit dem Wort Juli 2008 in einer Textdatei haben.

bei Antwort benachrichtigen
peterson asoke „Hallo, danke für die Antwort. mit der Textausgabe, das klappt wohl. Steht aber...“
Optionen

Du brauchst doch nur in der Dos-Box

findstr /?

eingeben.
Dann bekommst Du alle Parameter mit Erklkärungen.

bei Antwort benachrichtigen
REPI asoke „Batch Datei, Wort in unbekannter Text Datei suchen .“
Optionen
Es empfiehlt sich immer, etwas Linux im Hause zu haben.
bei Antwort benachrichtigen
asoke REPI „Hier was zu findstr:...“
Optionen

Der Link zu "findstr" mit einigen Beispielen ist gut, aber es klappt leider so nicht, wie es "peterson" schon erklärt hat. Trotzdem vielen Dank an alle.

bei Antwort benachrichtigen
peterson asoke „Batch Datei, Wort in unbekannter Text Datei suchen .“
Optionen

Zeilen in ein separates Logfile zu speichern geht nur, wenn die Ursprungsdateien auch Zeilen haben.
Das bedeutet, es müssen Tedxtdateien sein. .txt, .csv, usw.

In Word- und Excel-Dateien gibt es keine Zeilen.
Das sind Datenkonstrukte, die nicht so zu verarbeiten sind.
Sonst müßtest Du vorher eine Word-Datei als Textdatei speichern.

bei Antwort benachrichtigen
asoke peterson „Das , was Du möchtest, ist so nicht machbar.“
Optionen

Hallo

ich habe mit folgendem Befehl:
findstr /s /i "name" *.* > %date%.txt
Textzeilen in einer "Works" Datei und in "htm" Datei gefunden.

In der Text Datei werden die Zeilen von Works nur bedingt, ohne Umlaute, etc. wiedergegeben, während die Zeile der "htm" Datei fast fehlerfrei dargestellt wird.
siehe Beispiel:
Preis Versand-
Gesamt_08_03.wks:
Dezember 2007/2008
" Kauf Münzen


Artikel 2780745873 (Endet 24_01_04 231526 MEZ ) - Multimedia-Tastatur in schwarz OO1514-.htm:

Kann man da was machen, außer dass man alle "word" als "text" Dateien speichert ??
Möchte noch dazufügen, dass ich kein "Batch" Profi bin.

bei Antwort benachrichtigen
peterson asoke „Hallo ich habe mit folgendem Befehl: Textzeilen in einer Works Datei und in htm...“
Optionen

Würde es Dir nicht auch genügen, die Dateien zu finden, wo Dein Suchtext drinsteht und nur die Titel der Dateien zu speichern.

HTML ist ja nur Text.
Works sind Datenbankkonstrukte und haben viele Zeichen, die dann nciht darstellbar sind.

bei Antwort benachrichtigen
asoke peterson „Kein Batch-Profi“
Optionen
Würde es Dir nicht auch genügen, die Dateien zu finden, wo Dein Suchtext drinsteht und nur die Titel der Dateien zu speichern.
Ja, würde eventuell auch genügen.
bei Antwort benachrichtigen