Auswerten von Zeilen ohne bestimmte Buchstabenfolgen
Ich möchte (abhängig von einer bestimmten Nutzereingabe) unterschiedliche Zeilen nach einem Wert durchsuchen, den Inhalt der Zeile aber ohne den Wert ausgeben.
Ich habe ein kleines Batch-Script geschrieben, indem sich die Sprache einstellen lässt (Deutsch und Englisch). Da ich dzu Variablen benutze und nicht das ganze Script zweimal schreiben möchte, habe ich ein Problem:
Zur Identifikation der Zeilen habe ich Werte genutzt und in eine andere Datei geschrieben, z.B.:
Problem:
Die Zeilen sollen ausgelesen und dann als Variablen gesetzt werden - nur ohne AE1, AE2, etc.!
Hab's schon mit find, findstr und ein paar Varianten von for /f... probiert, leider erfolgslos.
Da ich in diesem Bereich (andere Dateien auslesen und Variablen setzen) vollkommen neu und bislang unerfahren bin, bitte ich euch um Hilfe!
Zur Identifikation der Zeilen habe ich Werte genutzt und in eine andere Datei geschrieben, z.B.:
AE1 Welcome
AE2 Please setup your current settings!
AD1 Willkommen!
AD2 Bitte stellen Sie Ihre momentanen Einstellungen ein!
Problem:
Die Zeilen sollen ausgelesen und dann als Variablen gesetzt werden - nur ohne AE1, AE2, etc.!
Hab's schon mit find, findstr und ein paar Varianten von for /f... probiert, leider erfolgslos.
Da ich in diesem Bereich (andere Dateien auslesen und Variablen setzen) vollkommen neu und bislang unerfahren bin, bitte ich euch um Hilfe!
Please also mark the comments that contributed to the solution of the article
Content-Key: 128405
Url: https://administrator.de/contentid/128405
Printed on: April 25, 2024 at 12:04 o'clock
3 Comments
Latest comment
Auch dir eine Begrüssung deiner Wahl...
An deiner Stelle würde ich das ganz anders machen....(so wie es fast jeder macht)
...und nicht alles in einer Riesen Language Datei.
Gruß
An deiner Stelle würde ich das ganz anders machen....(so wie es fast jeder macht)
If "%lang%=deu" set "langfile=deu.lng"
If "%lang%=enu" set "langfile=enu.lng"
...und nicht alles in einer Riesen Language Datei.
Gruß
Hallo Senseless,
für das Beispiel:
-die Datei heißt Werte.txt
-nach AE1, AE2 ... soll gesucht werden.
oder der erste Teil der Zeile dient als Variablenname:
Grüße
rubberman
für das Beispiel:
-die Datei heißt Werte.txt
-nach AE1, AE2 ... soll gesucht werden.
@echo off &setlocal
set such=AE2
for /f "tokens=1*" %%i in ('findstr /b /c:"%such%" "Werte.txt"') do set "var=%%j"
echo %var%
pause
oder der erste Teil der Zeile dient als Variablenname:
@echo off &setlocal
for /f "tokens=1*" %%i in (Werte.txt) do set "%%i=%%j"
echo %AE2%
pause
Grüße
rubberman