Dateien im Ordner auslesen und umbennen
Hi Leute
Schönen Feiertag zuerst. Ich habe an diesem leider ein Problem.
nutze ich um Bilder aus meinem Bilder Order auszulesen. Nun will ich die Bilder aber dazu auch noch umbennen und gleich in einen anderen Ordner kopieren.
Dafür habe ich eine Liste (csv ; getrennt) mit 2 Spalten. Dateinamealt;Dateinameneu. Immer wenn es eine Datei mit dem alten Dateinamen gibt soll diese in den neuen umbenannt werden und in einen anderen Ordner kopiert werden.
Leider habe ich keine Ahnung wie ich die erweiterung hinbekomme. Rename ist wohl die Funktion in der .batch zum umbennen aber wie lese ich die Liste ein?
Schönen Feiertag zuerst. Ich habe an diesem leider ein Problem.
[autorun]
cd K:\bilder\
dir *.jpg *.mkv /b /o:N /s > K:\bilder\verzeichnisse.txt
exit
nutze ich um Bilder aus meinem Bilder Order auszulesen. Nun will ich die Bilder aber dazu auch noch umbennen und gleich in einen anderen Ordner kopieren.
Dafür habe ich eine Liste (csv ; getrennt) mit 2 Spalten. Dateinamealt;Dateinameneu. Immer wenn es eine Datei mit dem alten Dateinamen gibt soll diese in den neuen umbenannt werden und in einen anderen Ordner kopiert werden.
Leider habe ich keine Ahnung wie ich die erweiterung hinbekomme. Rename ist wohl die Funktion in der .batch zum umbennen aber wie lese ich die Liste ein?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 316817
Url: https://administrator.de/forum/dateien-im-ordner-auslesen-und-umbennen-316817.html
Ausgedruckt am: 09.01.2025 um 09:01 Uhr
10 Kommentare
Neuester Kommentar
Hallo jocheng,
damit man Dir helfen kann, musst Du uns noch mitteilen was in der CSV-Datei steht. Enthalten die Spalten vollständige Dateipfade oder nur Dateinamen?
Außerdem solltest Du dafür sorgen, dass die CSV-Datei in der Zeichen-Codierung OEM850 gespeichert wird. Das kann man z.B. mit dem kostenlosen Texteditor Notepad++ machen.
Grüße
Friemler
damit man Dir helfen kann, musst Du uns noch mitteilen was in der CSV-Datei steht. Enthalten die Spalten vollständige Dateipfade oder nur Dateinamen?
Außerdem solltest Du dafür sorgen, dass die CSV-Datei in der Zeichen-Codierung OEM850 gespeichert wird. Das kann man z.B. mit dem kostenlosen Texteditor Notepad++ machen.
Grüße
Friemler
Hallo jocheng,
Du scheinst wieder mal so ein Hilfesuchender zu sein, der sein Problem selbst noch nicht ganz verstanden hat oder einfach nur nicht dazu in der Lage ist, sein Problem vollständig zu erklären.
Aus Deinen Angaben zur "Namenliste Neu und Alt" ergibt sich, dass mehrere Dateien nach der Umbenennung den gleichen Namen erhalten würden, nämlich "Paris" - das kann nicht funktionieren.
Aus den Angaben zur Dateiliste ergibt sich, dass es mehrere Bilder gibt, deren Namensanfang gleich ist (z.B. S232312-xxxxx.jpg). Wie sollen diese offensichtlich zusammengehörigen Dateien behandelt werden, zumal in der "Namenliste Neu und Alt" nur S232312 auftaucht?
Es nervt, wenn man die Problemstellung nur häppchenweise mitgeteilt bekommt und das Script deshalb immer wieder umschreiben muss. Also bitte, nochmal gründlich überlegen und eine vollständige Problembeschreibung liefern.
Grüße
Friemler
Du scheinst wieder mal so ein Hilfesuchender zu sein, der sein Problem selbst noch nicht ganz verstanden hat oder einfach nur nicht dazu in der Lage ist, sein Problem vollständig zu erklären.
Aus Deinen Angaben zur "Namenliste Neu und Alt" ergibt sich, dass mehrere Dateien nach der Umbenennung den gleichen Namen erhalten würden, nämlich "Paris" - das kann nicht funktionieren.
Aus den Angaben zur Dateiliste ergibt sich, dass es mehrere Bilder gibt, deren Namensanfang gleich ist (z.B. S232312-xxxxx.jpg). Wie sollen diese offensichtlich zusammengehörigen Dateien behandelt werden, zumal in der "Namenliste Neu und Alt" nur S232312 auftaucht?
Es nervt, wenn man die Problemstellung nur häppchenweise mitgeteilt bekommt und das Script deshalb immer wieder umschreiben muss. Also bitte, nochmal gründlich überlegen und eine vollständige Problembeschreibung liefern.
Grüße
Friemler
Ungetestet z.B. so
R.
@echo off & setlocal enabledelayedexpansion
set "quelle=c:\ordner"
set "csv=c:\namen.csv"
for /f "usebackq tokens=1,2 delims=;" %%a in ("%csv%") do (
for %%c in ("%quelle%\%%a*") do (
set "name=%%~nxc"
ren "%%c" "!name:%%a=%%b!"
)
)
umbennen
Zitat von @jocheng:
klappt perfekt nur eine Sache ist noch. Die neuen Datei müßen in einen anderen ordner.
klappt perfekt nur eine Sache ist noch. Die neuen Datei müßen in einen anderen ordner.
@echo off & setlocal enabledelayedexpansion
set "quelle=c:\ordner"
set "ziel=c:\ordner\ende"
set "csv=c:\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!"
)
)
Hallo Jochen,
statt quelle2 würde ich ja ziel benutzen.
In Zeile 6 läuft die for schleife durch den Zielordner wo noch nichts ist.
Der Befehl ren steht für rename und genau das und nur das tut er.
Zeile 8 sollte lauten
Gruß
LotPings
Zu langsam
statt quelle2 würde ich ja ziel benutzen.
In Zeile 6 läuft die for schleife durch den Zielordner wo noch nichts ist.
Der Befehl ren steht für rename und genau das und nur das tut er.
Zeile 8 sollte lauten
copy "%%c%" "%Ziel%\!name:%%a=%%b!"
Gruß
LotPings
Zu langsam
{OT]
Nein, eigentlich ist Rename nicht eine Funktion zum Umbennen.
Aber diese urban legend hält sich schon seit über einem Jahrzehnt hier im Forum.
Ist sozusagen schon 1000 Mal passiert.
Der
Grüße
Biber
[/OT]
Zitat von @jocheng:
Dateien im Ordner auslesen und umbennen
Nun will ich die Bilder aber dazu auch noch umbennen und gleich in einen anderen Ordner kopieren.
Rename ist wohl die Funktion in der .batch zum umbennen aber wie lese ich die Liste ein?
Dateien im Ordner auslesen und umbennen
Nun will ich die Bilder aber dazu auch noch umbennen und gleich in einen anderen Ordner kopieren.
Rename ist wohl die Funktion in der .batch zum umbennen aber wie lese ich die Liste ein?
Nein, eigentlich ist Rename nicht eine Funktion zum Umbennen.
Aber diese urban legend hält sich schon seit über einem Jahrzehnt hier im Forum.
Ist sozusagen schon 1000 Mal passiert.
Der
rgc
ist jedenfalls schon vierstellig.Grüße
Biber
[/OT]