Wert aus einer Steuerdatei per Batch zuweisen
In einem Verzeichnis werden eine oder mehrere Dateien erstellt (Schokolade.txt, Messer.txt, ....).
Zu jedem Dateinamen gehört ein Datensatz in einer Steuerdatei gepflegt, welche inhaltlich so aussieht:
Schokolade.txt bitter
Messer.txt scharf
Auto.txt schnell
Pflanze.txt grün
Nach Skriptaufruf soll eine Bildschirmausgabe in Form der Eigenschaft aus der zweiten Spalte erfolgen.
Wenn z.B. nur die Datei "Auto.txt" erstellt wurde, soll nur "schnell" ausgegeben werden. Bei zwei oder mehreren Dateien natürlich die weiteren zugehörigen Eigenschaften untereinander. Nach Ausgabe sollen die Dateien gelöscht werden.
Ist es möglich über DOS-Batch diese Aufgabe zu realisieren und hat jemand Lösungsansätze?
Danke im voraus
Gruß
Erik
Zu jedem Dateinamen gehört ein Datensatz in einer Steuerdatei gepflegt, welche inhaltlich so aussieht:
Schokolade.txt bitter
Messer.txt scharf
Auto.txt schnell
Pflanze.txt grün
Nach Skriptaufruf soll eine Bildschirmausgabe in Form der Eigenschaft aus der zweiten Spalte erfolgen.
Wenn z.B. nur die Datei "Auto.txt" erstellt wurde, soll nur "schnell" ausgegeben werden. Bei zwei oder mehreren Dateien natürlich die weiteren zugehörigen Eigenschaften untereinander. Nach Ausgabe sollen die Dateien gelöscht werden.
Ist es möglich über DOS-Batch diese Aufgabe zu realisieren und hat jemand Lösungsansätze?
Danke im voraus
Gruß
Erik
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 101757
Url: https://administrator.de/contentid/101757
Ausgedruckt am: 25.11.2024 um 10:11 Uhr
5 Kommentare
Neuester Kommentar
Hallo Erik72 und willkommen im Forum!
Soferne die Dateinamen keine Leerzeichen enthalten, sollte das (ungetestet) etwa so gehen:
Das Löschen der Dateien wird (zum Testen) durch das "echo" in Zeile 4 nur angezeigt - wenn tatsächlich gelöscht werden soll, das "echo" entfernen.
Grüße
bastla
[Edit] `ergänzt [/Edit]
Soferne die Dateinamen keine Leerzeichen enthalten, sollte das (ungetestet) etwa so gehen:
@echo off & setlocal
for %%i in ("D:\Der Ordner mit den Dateien\*.txt") do for /f "tokens=2" %%a in ('findstr /i /c:"%%~nxi" "D:\Steuerdatei.txt"') do (
echo %%a
echo del "%%i" 2>nul
)
echo\
pause
Grüße
bastla
[Edit] `ergänzt [/Edit]