spookypoof
Goto Top

Bestimmter Text aus einer Textdatei umgeändert in einer Variable speichern?

Hallo,

Ich wollte den Inhalt aus einer Textdatei umgeändert in einer Variable speichern.
Beispiel:

Textdatei.txt beinhaltet z.B. "best" (ohne Anführungszeichen) und ich will diesen Inhalt dann als "Sehr gut" speichern.
Und das mehrmals. Es kann nämlich sein, dass in der Textdatei "worst" steht und die Batch muss dann dies als "Sehr schlecht" in einer Variable speichern.

Wie geht das?

Grüße
-spooky

Content-ID: 254624

Url: https://administrator.de/contentid/254624

Ausgedruckt am: 23.11.2024 um 07:11 Uhr

rubberman
rubberman 12.11.2014 aktualisiert um 18:37:26 Uhr
Goto Top
Hallo spookypoof,

geht's vielleicht noch unkonkreter?

Ich wollte den Inhalt aus einer Textdatei umgeändert in einer Variable speichern.
Den gesamten Inhalt einer Datei in einer Variablen? Öhm, wenn sie nur aus einer Zeile besteht, ja.

Textdatei.txt beinhaltet z.B. "best"
Ach so, also nur ein Wort pro Datei.

Und das mehrmals.
Äh, doch mehrere Worte pro Datei? Aber immer noch nur eine Zeile, oder?

Es kann nämlich sein, dass in der Textdatei "worst" steht und die Batch muss dann dies als "Sehr schlecht" in einer Variable speichern.
Wie meinst du dass? Textersetzung? Oder soll sobald in einer Datei (z.B. per FINDSTR) irgendwo das Wort "worst" gefunden wird, einfach eine Variable mit Inhalt "Sehr schlecht" erstellt werden? Was, wenn "best" und "worst" in der gleichen Datei vorkommen?

Sorry, aber ohne Glaskugel mit der man auf deinen Bildschirm schauen kann wird das nix.
Gib mal den Inhalt so einer Datei als konkretes Beispiel an und erzähle, wie du dir die Verarbeitung vorstellst.

Grüße
rubberman
spookypoof
spookypoof 12.11.2014 aktualisiert um 22:59:36 Uhr
Goto Top
Hallo rubberman,

Erstmal sorry wegen der ungenauen Erklärung. face-smile
Es ist immer nur eine Zeile (ein Wort ohne Leerzeichen). Nein, "best" und "worst" können nicht beide in der Datei vorkommen. Und ja, wie du gesagt hast,

Zitat von @rubberman:
Oder soll sobald in einer Datei (z.B. per FINDSTR) irgendwo das Wort "worst" gefunden
wird, einfach eine Variable mit Inhalt "Sehr schlecht" erstellt werden?

So wollte ich es Erklären face-smile

Aber die Textdatei könnte auch nur z.B. "best" beinhalten. Dan soll eine Variable mit dem Inhalt "Sehr gut" erstellt werden.

Grüße
-spooky
rubberman
Lösung rubberman 13.11.2014 aktualisiert um 15:06:16 Uhr
Goto Top
Hallo spookypoof.

Dann lässt sich das relativ leicht lösen.
@echo off &setlocal
set "file=test.txt"  

set "msg=Suchzeichenfolgen nicht gefunden"  
>nul findstr "best" "%file%" && set "msg=Sehr gut"  
>nul findstr "worst" "%file%" && set "msg=Sehr schlecht"  

echo %msg%
pause
... ungetestet ...

Grüße
rubberman
spookypoof
spookypoof 13.11.2014 um 15:07:06 Uhr
Goto Top
Hallo rubberman,

Vielen Dank für die Hilfe! Hat geklappt face-smile

Grüße
-spooky