Dieser Beitrag ist schon älter. Bitte vergewissern Sie sich, dass die Rahmenbedingungen oder der enthaltene Lösungsvorschlag noch dem aktuellen Stand der Technik entspricht.

Auslesen einzlner Zeilen aus einem TXT File mittels Batch

Mitglied: meuse
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

Content-Key: 3311

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

Ausgedruckt am: 21.06.2021 um 12:06 Uhr

10 Kommentare
Mitglied: meto
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.
Mitglied: Lord-Helmi
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
Mitglied: meuse
Hallo!

Also ich sollte folgendes haben. Ich habe TXT file mit lauter Rechnernamen

PC1
PC2
PC3
...

Nun sollte ich haben, dass mir das Batchfile ein Echo ausgeben soll, welche PC´s in der Liste stehen.

FOR %%f IN () DO echo %%f

aber ich weiß leider nicht, was in die Klammer kommt. Wenn ich das Textfile angebe, wird der Name des Files ausgegeben und nicht PC1, PC2, ... .

Danke
Mitglied: Lord-Helmi
Hallo

probiers mal mit der Option /f, dann müsste das ganze funktionieren. Der Name der Text-Datei kommt in die Klammern.

FOR /f %%f IN (test.txt) DO echo %%f

Gruß
Michael
Mitglied: meuse
Hallo Michael!!

Vielen Dank, es hat bestens funktioniert!!

Kennst du eventuell gute Links auf Batch Sites (Erklärung, Tutorials, ...) oder weißt du wo ich E-Books downloaden kann??

Wäre dir sehr dankbar!!

Gruß
Markus
Mitglied: Lord-Helmi
Hallo,

leider kenne ich zu dem Thema auch keine richtig guten Seiten. Auch wenn es bestimmt eine Menge davon gibt. Eine Übersicht der Win2k und WinXP - Befehle findest du unter home.arcor.de/zero2k58/pdf/CMD_20Referenz.pdf

Gruß
Michael
Mitglied: matzZz3
Habe Ähnliche Aufgabenstellung, bekomme es aber ums verrecken nicht hin :( face-sad
Bei mir soll die Batch Datei nur die 2, 4, und 6 Zeile auslesen, bekomms aber nicht zum laufen :( face-sad

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 ;(
Mitglied: Biber
Moin matzZz3.

willkommen im Forum.
In Deinem Fall dann:
a) CMD-Prompt

b) Batch

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.
Mitglied: matzZz3
Vielen Dank, Funktioniert!

Kannst du mir eventuell noch die Syntax dazu erklären?

Sieht für mich als armer einfacher Anwender doch sehr verwwirend aus :/

Es reicht dabei ne kleine Erklärung.

Gruß Mathias

PS: Werde mich in Zukunft an die Netiquette halten
Mitglied: Biber
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
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
Heiß diskutierte Beiträge
Router & Routing
Deutsche Glasfaser. NT direkt an pfSense möglich oder besser Kaskade?
fnbaluVor 1 TagFrageRouter & Routing23 Kommentare

Hallo zusammen, am kommenden Mittwoch wird bei mir der Deutsche Glasfaser Anschluss aktiviert. Anfangs wird darüber kein Telefon laufen, aber vielleicht später. Mir stellt sich ...

Notebook & Zubehör
Alt-Laptop Vergleichsmeinungen
winlinVor 1 TagFrageNotebook & Zubehör12 Kommentare

Hallo zusammen Habe zwei Laptops und einen mini pc und würde gerne wissen was ihr zu den beiden Laptops sagt??? Was dürfte ich Max an ...

Firewall
OpenVPN-Problem
gelöst ingorosVor 1 TagFrageFirewall20 Kommentare

Hallo, habe gestern mit ipfire einen OpenVPN-Server aufgesetzt. Der läuft auch wunderbar. Sowohl Win7, wie auch Win10pro können sich problemlos anmelden. Ein Laptop mit Win10 ...

Windows 10
Remotedesktopzugang mit Openvpn sicher?
LegofrauVor 1 TagFrageWindows 108 Kommentare

Guten Morgen, wie sicher ist es wenn man Remotedesktopzugang durch einen Openvpn Tunnel betreibt? Der Openvpn Tunnel ist mit aktuellen Zertifikaten abgesichert. Der Pc hat ...

Windows Server
AD Replikation zwischen Standorten schlägt fehl nach Level auf 2008R2
diematrix125Vor 1 TagFrageWindows Server14 Kommentare

Hallo zusammen, ich habe ein (mittelschweres?) Problem mit dem AD. Ausgangssituation: Standort A: 3 DCs unter Win 2008R2 Standort B: 1 DC unter Win 2008R2 ...

LAN, WAN, Wireless
Gastnetzwerk für Restaurant mit FritzBox 4040
gelöst Net-ZwerKVor 10 StundenFrageLAN, WAN, Wireless11 Kommentare

Moin! Ich soll in einem kleinen Restaurant ein WLAN als Gastnetz einrichten. Aktuell ist vorhanden: Telekom Digitalisierungsbox Premium im Keller (macht ein WLAN, welches der ...

Windows 10
Win 10 Fehler 0xc000000e und bootmbr fehlt
dressaVor 1 TagFrageWindows 1010 Kommentare

Hallo miteinander. Ein guter Kollege von mir kam auf mich zu weil sein PC mit wichtigen Daten nicht mehr läuft. Er hatte laut seinen Aussagen ...

Entwicklung
Glasfaseranschluss mit 4 Knotenpunkten auf 26 Häuser 1 Büro aufteilen
chrisbaliVor 5 StundenFrageEntwicklung16 Kommentare

hallo liebe Leute in der alten heimat Ganz vorweg ich Habe erstmal keine Ahnung und kenne den Spruch ...