hardbrand
Goto Top

mehere Files per cmd umbenennen - Dateiname befindet sich dabei in einer csv

Hallo zusammen, da ich hier neu bin möchte ich erstmal alle Mitglieder begrüßen! :o)
Habe bis jetzt nur leichte Erfahrungen mit Batch machen können und auch nur die einfachsten Befehle verwendet.

Ich habe ein kleines Problem mit der Erstellung eines CMD Script, welches mir bei der Vervielfachung und anschließende Umbenennung helfen soll. Es muss mehere Files laut dem Inhalt der csv Datei vervielfältigen und dann umbenennen.

Inhalt.csv:
192.168.178.1
192.168.178.123
129.168.178.33

file.cab = das File welches vervielfältigt und anschließend umbenannt werden soll - also dann: 192.168.178.1.cab; 192.168.178.123.cab; 192.168.178.33.cab

Wo muss ich beginnen dieses Problem zu lösen?

Content-Key: 121002

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

Printed on: April 27, 2024 at 00:04 o'clock

Member: rubberman
rubberman Jul 21, 2009 at 19:12:50 (UTC)
Goto Top
Vielleicht so:
@echo off &setlocal
set csv=Inhalt.csv
set cab=file.cab
for /f "tokens=*" %%i in (%csv%) do copy %cab% %%i.cab  
Member: hardbrand
hardbrand Jul 21, 2009 at 19:35:15 (UTC)
Goto Top
Dass nenn ich doch mal kurz und prägnannt!

Heißt also das wir 2 Variablen haben namens: csv & cab.

Diese werden dann ohne Nachfrage... und da hört mein Wissen auf, hilf mir bitte auf die Sprünge.
Member: rubberman
rubberman Jul 21, 2009 at 20:49:02 (UTC)
Goto Top
Genau. In den Variablen %csv% und %cab% stehen (ggf. Pfade und) die Namen deiner *.csv und *.cab.
In der FOR-Schleife werden der Variablen %%i die Werte der *.csv zeilenweise zugeordnet und mit dem neuen Namen kopiert. Das "tokens=*" steht dafür, dass jeweils der Text der gesamten Zeile in %%i übernommen wird. Standardmäßig würde sie sonst duch enthaltene Leerzeichen oder Tabs zerstückelt (wobei das bei IP's nie der Fall sein würde).
Member: hardbrand
hardbrand Jul 21, 2009 at 21:08:14 (UTC)
Goto Top
Alles klar. Verstanden, Danke Dir!