Dateinamen umschreiben batch
Hi Leute ich trete mal wieder auf der Stelle. Es geht darum Bilddaten umzuschreiben. Ich bin auch fast am Ziel nur habe ich mit folgendem Code ein Problem
Auszug aus der namen.csv:
-5_white;-4
-6_white;-3
-8_white;-12
Die Bildernamen sind
AK4921-5_white
AK4921-6_white
AQ4921-8_white
AK4963-3_white
etc
nun will ich als Resultat:
das die Datein am Ende
AK4921-4
AK4921-3
etc heißen.
abschneiden des Dateinamen geht nicht
@echo off & setlocal enabledelayedexpansion
set "quelle=D:\test2"
set "ziel=D:\test2\2"
set "csv=D:\test2\bildernamenscript\namen.csv"
for /f "usebackq tokens=1,2 delims=;" %%a in ("%csv%") do (
for %%c in ("%quelle%\%%a*") do (
set "name=%%~nxc"
copy "%%c" "%ziel%\!name:%%a=%%b!"
)
)
Auszug aus der namen.csv:
-5_white;-4
-6_white;-3
-8_white;-12
Die Bildernamen sind
AK4921-5_white
AK4921-6_white
AQ4921-8_white
AK4963-3_white
etc
nun will ich als Resultat:
das die Datein am Ende
AK4921-4
AK4921-3
etc heißen.
abschneiden des Dateinamen geht nicht
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 317577
Url: https://administrator.de/contentid/317577
Ausgedruckt am: 05.11.2024 um 21:11 Uhr
5 Kommentare
Neuester Kommentar
Schon mal folgende Stelle angeschaut
Gruß R.
"%quelle%\%%a*"
Dann sollte es jetzt in beiden Ohren klingeln. Stichwort "Wildcard".Gruß R.
"%quelle%\*%%a"
geht hier problemlos.
Du solltest dir vielleicht mal
https://de.wikibooks.org/wiki/Batch-Programmierung:_Batch-Befehle#FOR
durchlesen. %%a ist die Laufvariable der Schleife, da kannst du nicht einfach den Variablennamen weglassen
https://de.wikibooks.org/wiki/Batch-Programmierung:_Batch-Befehle#FOR
durchlesen. %%a ist die Laufvariable der Schleife, da kannst du nicht einfach den Variablennamen weglassen