Mehre Batchdatein erstellen aus Excelliste
Hallo ich arbeite in einer IT-Abteilung in einem Verlag und bin neu hier
Hab auch gleich eine dringende Frage.
Ich soll 150 Batchdateien erstellen für unsere neuen Rechner. Die Batchdatei soll den Wake on Lane befehl ausführen und sieht so aus für unsere alten Rechner
@echo OFF
wol.exe XX:XX:XX:XX:XX:XX
ECHO WOL ausgefuehrt!
Der Dateiname ist immer wol-Rechnername.bat
Ich habe eine Excelliste die sieht so aus :
Spalte 1 Spalte 2
Rechnername MAC-Adresse
In der Exceltabelle sind alle Rechner für die ich eine Batchdatei erstellen soll aufgeschlüsselt.
Gibt es eine Möglichkeit aus dieser Exceltabelle automatisch die ganzen Batchdateien für die einzelnen Rechner zu erstellen und gleich mit dem richtigen Dateinamen zuversehen?
Wäre eine Große Hilfe da ich sonst alle per Hand erstellen müsste.
Danke schonmal
Ich soll 150 Batchdateien erstellen für unsere neuen Rechner. Die Batchdatei soll den Wake on Lane befehl ausführen und sieht so aus für unsere alten Rechner
@echo OFF
wol.exe XX:XX:XX:XX:XX:XX
ECHO WOL ausgefuehrt!
Der Dateiname ist immer wol-Rechnername.bat
Ich habe eine Excelliste die sieht so aus :
Spalte 1 Spalte 2
Rechnername MAC-Adresse
In der Exceltabelle sind alle Rechner für die ich eine Batchdatei erstellen soll aufgeschlüsselt.
Gibt es eine Möglichkeit aus dieser Exceltabelle automatisch die ganzen Batchdateien für die einzelnen Rechner zu erstellen und gleich mit dem richtigen Dateinamen zuversehen?
Wäre eine Große Hilfe da ich sonst alle per Hand erstellen müsste.
Danke schonmal
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 168380
Url: https://administrator.de/forum/mehre-batchdatein-erstellen-aus-excelliste-168380.html
Ausgedruckt am: 21.04.2025 um 08:04 Uhr
10 Kommentare
Neuester Kommentar
Moin,
das geht doch auch anders:
1. die excel Liste als Textdatei speichern und am besten vorher noch ein Trennzeichen einführen (Als extra Spalte, bspw ein ; )
2. Über eine For-Schleife alle Mac Adressen ansprechen aus einer Batch-Datei heraus
so in der Art:
Gruß
Nagus
das geht doch auch anders:
1. die excel Liste als Textdatei speichern und am besten vorher noch ein Trennzeichen einführen (Als extra Spalte, bspw ein ; )
2. Über eine For-Schleife alle Mac Adressen ansprechen aus einer Batch-Datei heraus
so in der Art:
for /F "delims=; tokens=1,2 " %%i in (Datei.txt) do wol.exe %%j
Gruß
Nagus
... und falls jeder Rechner einzeln angesprochen werden soll, etwa so (ungetestet):
Aufzurufen wäre der Batch (zB "Wecke.cmd") dann mit Übergabe des Rechnernamens als Parameter, also etwa:
Falls aber tatsächlich jeweils eine Batch-Datei entstehen soll, dann etwa (weiterhin ungetestet
):
Grüße
bastla
[Edit] @Friemler: Woher soll ich wissen, ob Zeile 6 funktioniert - ist ja "ungetestet" ...
[/Edit]
[Edit2] ... aber ich gehe davon aus, dass das Ergebnis (bis auf den Umlaut) zufriedenstellend sein wird. [/Edit2]
@for /f "tokens=2 delims=;" %%i in ('findstr /i %1 "D:\Datei.txt"') do @(wol %%i && echo WOL %~1 ausgeführt)
Wecke Rechner57
@echo off & setlocal
for /f "usebackq tokens=1-2 delims=;" %%i in ("D:\Datei.txt") do (
echo @echo off
echo wol %%j
echo WOL ausgeführt
)>D:\wol-%%i.cmd
bastla
[Edit] @Friemler: Woher soll ich wissen, ob Zeile 6 funktioniert - ist ja "ungetestet" ...
[Edit2] ... aber ich gehe davon aus, dass das Ergebnis (bis auf den Umlaut) zufriedenstellend sein wird. [/Edit2]
Hallo henner,
die Exceltabelle als CSV speichern, die Variablen
Gruß
Friemler
[EDIT]
Zu langsam.
@bastla: Und Zeile 6 funktioniert?
[/EDIT]
[EDIT2]
Schelm!
[/EDIT2]
die Exceltabelle als CSV speichern, die Variablen
InputFile
und OutputPath
im folgenden Script anpassen und starten.@echo off
setlocal
set "InputFile=X:\Rechner.csv"
set "OutputPath=X:\WOL-Scripte"
for /f "usebackq delims=; tokens=1,2" %%a in ("%InputFile%") do (
> "%OutputPath%\%%a.cmd" echo @echo off
>>"%OutputPath%\%%a.cmd" echo wol.exe %%b
>>"%OutputPath%\%%a.cmd" echo echo WOL ausgefuehrt!
)
Gruß
Friemler
[EDIT]
Zu langsam.
@bastla: Und Zeile 6 funktioniert?
[/EDIT]
[EDIT2]
Schelm!
[/EDIT2]
Moin;
hehehe
kann man das auch als EDIT des Monats Bezeichnen (oder Top ten EDIT)?
@Friemler die Schliessende Klammer ist ja nur die Zusammenfassung ZU einer Befehlszeile.
Wenn hinter der Klammer noch was angefügt wird gilt das ja auch für diese BefehlsZeile.
Kannst es ja auch so schreiben ungefähr
Gruß Phil
Zitat von Friemler:
@bastla: Und Zeile 6 funktioniert?

@bastla: Und Zeile 6 funktioniert?
Zitat von bastla:
[Edit] @Friemler: Woher soll ich wissen, ob Zeile 6 funktioniert - ist ja "ungetestet" ...
[/Edit]
Schelm! [Edit] @Friemler: Woher soll ich wissen, ob Zeile 6 funktioniert - ist ja "ungetestet" ...
[Edit2] ... aber ich gehe davon aus, dass das Ergebnis (bis auf den Umlaut) zufriedenstellend sein wird. [/Edit2]
hehehe
kann man das auch als EDIT des Monats Bezeichnen (oder Top ten EDIT)?
@Friemler die Schliessende Klammer ist ja nur die Zusammenfassung ZU einer Befehlszeile.
Wenn hinter der Klammer noch was angefügt wird gilt das ja auch für diese BefehlsZeile.
Kannst es ja auch so schreiben ungefähr
for /f "usebackq tokens=1-2 delims=;" %i in ("D:\Datei.txt") do 4>D:\wol-%i.cmd (echo @echo off&::...weiter&rem ende)>&4
Gruß Phil
Moin bastla,
Keine Angst, ich bekomme ja nicht alles mit...
Grüße
Biber
Keine Angst, ich bekomme ja nicht alles mit...
Grüße
Biber