Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mehre Batchdatein erstellen aus Excelliste

Frage Entwicklung Batch & Shell

Mitglied: henner

henner (Level 1) - Jetzt verbinden

21.06.2011 um 11:29 Uhr, 2888 Aufrufe, 10 Kommentare

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
Mitglied: Nagus
21.06.2011 um 11:41 Uhr
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:

01.
for /F "delims=;  tokens=1,2 " %%i  in (Datei.txt) do wol.exe %%j
Gruß
Nagus
Bitte warten ..
Mitglied: bastla
21.06.2011 um 11:49 Uhr
... und falls jeder Rechner einzeln angesprochen werden soll, etwa so (ungetestet):
@for /f "tokens=2 delims=;" %%i in ('findstr /i %1 "D:\Datei.txt"') do @(wol %%i && echo WOL %~1 ausgeführt)
Aufzurufen wäre der Batch (zB "Wecke.cmd") dann mit Übergabe des Rechnernamens als Parameter, also etwa:
Wecke Rechner57
Falls aber tatsächlich jeweils eine Batch-Datei entstehen soll, dann etwa (weiterhin ungetestet ):
01.
@echo off & setlocal 
02.
for /f "usebackq tokens=1-2 delims=;" %%i in ("D:\Datei.txt") do ( 
03.
    echo @echo off 
04.
    echo wol %%j 
05.
    echo WOL ausgeführt 
06.
)>D:\wol-%%i.cmd
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]
Bitte warten ..
Mitglied: Friemler
21.06.2011 um 11:54 Uhr
Hallo henner,

die Exceltabelle als CSV speichern, die Variablen InputFile und OutputPath im folgenden Script anpassen und starten.

01.
@echo off 
02.
 
03.
setlocal 
04.
 
05.
 
06.
set "InputFile=X:\Rechner.csv" 
07.
set "OutputPath=X:\WOL-Scripte" 
08.
 
09.
for /f "usebackq delims=; tokens=1,2" %%a in ("%InputFile%") do ( 
10.
  > "%OutputPath%\%%a.cmd" echo @echo off 
11.
  >>"%OutputPath%\%%a.cmd" echo wol.exe %%b 
12.
  >>"%OutputPath%\%%a.cmd" echo echo WOL ausgefuehrt! 
13.
)
Gruß
Friemler


[EDIT]
Zu langsam.

@bastla: Und Zeile 6 funktioniert?
[/EDIT]


[EDIT2]
@Friemler: Woher soll ich wissen, ob Zeile 6 funktioniert - ist ja "ungetestet" ...
Schelm!
[/EDIT2]
Bitte warten ..
Mitglied: henner
21.06.2011 um 12:24 Uhr
Vielen Dank an alle für die Antworten. Hab die Lösung von Friemler getestet und hat Super geklappt

Herzlichen Dank
Bitte warten ..
Mitglied: pieh-ejdsch
21.06.2011 um 13:19 Uhr
Moin;

Zitat von Friemler:
@bastla: Und Zeile 6 funktioniert?
Zitat von bastla:
[Edit] @Friemler: Woher soll ich wissen, ob Zeile 6 funktioniert - ist ja "ungetestet" ... [/Edit]
Schelm!
[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
01.
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
Bitte warten ..
Mitglied: Friemler
21.06.2011 um 13:56 Uhr
Moin Phil,

ja, ist mir dann auch aufgefallen. Mich hat halt erstmal die Laufvariable außerhalb der Klammer irritiert. Auf jeden Fall war's amüsant.

Gruß
Friemler
Bitte warten ..
Mitglied: bastla
21.06.2011 um 14:27 Uhr
Hallo Friemler & PH!

Dass wir's an einem Dienstag noch mal so lustig haben würden ...

Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
21.06.2011 um 14:34 Uhr
Aloha bastla,

ich dachte Dienstags gilt einfach nur set /a Montag+=1

also ändert sich der Tag ja nicht

greetz André
Bitte warten ..
Mitglied: bastla
21.06.2011 um 14:37 Uhr
Hallo Skyemugen!

Lass besser Biber diesen Ansatz nicht sehen ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
21.06.2011 um 19:39 Uhr
Moin bastla,

Zitat von bastla:
Lass besser Biber diesen Ansatz nicht sehen ...
Keine Angst, ich bekomme ja nicht alles mit...

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Mehrere AD Benutzer aus CSV Datei mit PowerShell erstellen (1)

Frage von windelterrorist zum Thema Batch & Shell ...

Batch & Shell
gelöst Mehrere Dateien mit laufender Nummer automatisch erstellen (5)

Frage von anko123 zum Thema Batch & Shell ...

Exchange Server
gelöst Exchange 2013 dynamische verteilerliste mit mehreren recipientfiltern erstellen (8)

Frage von blackhawk17 zum Thema Exchange Server ...

Hyper-V
Kann keinen Prüfpunkt erstellen (2)

Frage von MAC-HC zum Thema Hyper-V ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
gelöst Leiten "dumme" Switches VLAN-Tags mit durch? (26)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (15)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Router & Routing
FTTH bzw FTTB Router (13)

Frage von ukulele-7 zum Thema Router & Routing ...