Auslesen einzlner Zeilen aus einem TXT File mittels Batch
Hallo Jungs!
Ich habe folgendes Problem. Ich habe eine Liste mit mehreren Rechner als TXT. Nun sollte ich auf diesen Rechnern Änderungen vornehmen und weiß aber nicht, wie ich die Rechner nacheinander, zeilenweise auslesen kann.
Danke
.meuse
Ich habe folgendes Problem. Ich habe eine Liste mit mehreren Rechner als TXT. Nun sollte ich auf diesen Rechnern Änderungen vornehmen und weiß aber nicht, wie ich die Rechner nacheinander, zeilenweise auslesen kann.
Danke
.meuse
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3311
Url: https://administrator.de/contentid/3311
Ausgedruckt am: 22.11.2024 um 06:11 Uhr
10 Kommentare
Neuester Kommentar
Versuch es mal mit VB-Scripting. Anleitung findest du unter http://www.microsoft.com/germany/technet/datenbank/articles/600356.mspx
Damit kannst du deine Textdatei zeilenweise auslesen und dann VB-Befehle oder auch CMD-Befehle ausführen.
Damit kannst du deine Textdatei zeilenweise auslesen und dann VB-Befehle oder auch CMD-Befehle ausführen.
Hallo,
den Befehl, den du suchst, lautet "for". Mit einer for-Schleife kannst du jede einzelne Zeile aus deiner Textdatei auslesen und dafür jeweils eine bestimmte Aktion ausführen.
Falls du hilfe beim Erstellen der for-Schleife brauchst, poste einfach mal einen Auszug aus der Text-Datei und welcher Befehl für die Zeilen ausgeführt werden soll.
Gruß
Michael
den Befehl, den du suchst, lautet "for". Mit einer for-Schleife kannst du jede einzelne Zeile aus deiner Textdatei auslesen und dafür jeweils eine bestimmte Aktion ausführen.
Falls du hilfe beim Erstellen der for-Schleife brauchst, poste einfach mal einen Auszug aus der Text-Datei und welcher Befehl für die Zeilen ausgeführt werden soll.
Gruß
Michael
Habe Ähnliche Aufgabenstellung, bekomme es aber ums verrecken nicht hin
Bei mir soll die Batch Datei nur die 2, 4, und 6 Zeile auslesen, bekomms aber nicht zum laufen
Bisher sieht es so aus:
@echo off
if not exist Test.txt echo Bitte ins Verzeichniss kopieren! & pause & goto :eof
@echo off
echo erstellt von Max Mustermann
FOR /f %%f IN (Test.txt) DO echo %%f
Pause
So zeigt er mir die ganze Textfile an, aber mlchte wie gesagt nur die 2,4 und 6 Zeile.
HIlfe ;(
Bei mir soll die Batch Datei nur die 2, 4, und 6 Zeile auslesen, bekomms aber nicht zum laufen
Bisher sieht es so aus:
@echo off
if not exist Test.txt echo Bitte ins Verzeichniss kopieren! & pause & goto :eof
@echo off
echo erstellt von Max Mustermann
FOR /f %%f IN (Test.txt) DO echo %%f
Pause
So zeigt er mir die ganze Textfile an, aber mlchte wie gesagt nur die 2,4 und 6 Zeile.
HIlfe ;(
Moin matzZz3.
willkommen im Forum.
In Deinem Fall dann:
a) CMD-Prompt
b) Batch
Grüße
Biber
P.S. Hier bei uns im Forum
willkommen im Forum.
In Deinem Fall dann:
a) CMD-Prompt
>for /f "tokens=1,* delims=:" %i in ('findstr /n $ test.txt') do @for /L %a in (2,2,6) do @if %i==%a @echo %j
b) Batch
for /f "tokens=1,* delims=:" %%i in ('findstr /n $ test.txt') do @(
for /L %%a in (2,2,6) do @if %%i==%%a @echo %%j
)
Grüße
Biber
P.S. Hier bei uns im Forum
- schreiben wir "Hallo" oder "Tach" statt "Habe Ähnliche Aufgabenstelllung" am Anfang
- schreiben "Gruß" am Ende statt "HIlfe ;("
- und werden aber im Gegenzug auch immer freundlich bedient.
Moin matzZz3,
danke für die Rückmeldung.
Ich versuch eine kurze Erklärung (hab einen Termin gleich).
Aber wir haben ähnliche Beispiele ausführlich aufgedröselt in Batch & Shell.
--> innen in der ersten Klammer anfangen zu lesen: da steht der Text, der verwertet wird.
--> teste die Ausgabe von "findstr /n $ test.txt" (ohne Anführungszeichen) am CMD-Prompt
--> Alle Zeilen incl. Leerzeilen werden nummeriert angelistet.
--> "tokens=1,* delims=:" == trenne in Token1 und TokenRest mit Trennzeichen ":"
--> Davon werden später die Zeilennummern (=Token1) geprüft daraufhin, ob die 2, 4 oder 6 heißen.
Da das zufällig eine Zahlenreihe mit konstanter Schrittweite ist, hab ich schnell die FOR /L-Anweisung genommen (die lag grad hier rum) um mit
Jo, und wenn es passt, wird es ausgegeben.
Grüße
Biber
danke für die Rückmeldung.
Ich versuch eine kurze Erklärung (hab einen Termin gleich).
Aber wir haben ähnliche Beispiele ausführlich aufgedröselt in Batch & Shell.
for /f "tokens=1,* delims=:" %%i in ('findstr /n $ test.txt') do @(
for /L %%a in (2,2,6) do @if %%i==%%a @echo %%j
)
--> innen in der ersten Klammer anfangen zu lesen: da steht der Text, der verwertet wird.
--> teste die Ausgabe von "findstr /n $ test.txt" (ohne Anführungszeichen) am CMD-Prompt
--> Alle Zeilen incl. Leerzeilen werden nummeriert angelistet.
--> "tokens=1,* delims=:" == trenne in Token1 und TokenRest mit Trennzeichen ":"
--> Davon werden später die Zeilennummern (=Token1) geprüft daraufhin, ob die 2, 4 oder 6 heißen.
Da das zufällig eine Zahlenreihe mit konstanter Schrittweite ist, hab ich schnell die FOR /L-Anweisung genommen (die lag grad hier rum) um mit
FOR /L %%a in (2,2,6)
..von der Zahl 2 angefangen mit der Schrittweite 2 bis 6 zu zählen.Jo, und wenn es passt, wird es ausgegeben.
Grüße
Biber