Datein per Batch umbennen
Hallo !
Hoffe ihr könnt mir helfen. habe schon alles durchsucht aber ich bin nicht os fit im Batch schreiben.
Worum geht es:
Habe bisher eine Batch geschrieben die Datein der Überwachungskamera einliest und diese in entsprechende Tagesunterverzichnisse sortiert.
Soweit so gut.
Nun kommen diese Datein aber katastrophal an, so dass ich Sie keiner Uhrzeit der Aufnahme zuordnen kann.
Datein sehen in etwa so aus:
00626E4032FF(Kamer schwenk)_1_20120802021540_13093.jpg
00EA21634B5D(Kamera Fest)_1_20120802042445_1136.jpg
Im Prinzip soll das ÄNDERUNGSDATUM bzw ÄNDERUNGSZEIT als Grundlage dienen diese dann komplett umzubennnen nach folgendem Schema:
STUNDE24/MINUTE/SEKUNDE--TAG/MONAT/JAHR.Jpg
Am besten wäre es natürlich, wenn er unterverzeichnisse die er schon mal hatte auslässt oder bzw. man auswählen kann. Ansonsten kopiere ich es halt in das Verzeichnis in dem ich es brauche.
Unterverzeichnisse haben folgendes Schema:
2012-07-27
2012-07-28
2012-07-29
2012-07-30
Meine bisherige Batch sieht so aus:
@echo off & setlocal
:: Festlegen der Variablen für Quell und Zielverzeichnis...
set "QuellDirFiles=K:\Kamera\Unsortiert\Laden1\*.*"
set "ZielDirRoot=K:\Kamera\Laden1\"
:: Erstellen der Ordner Anhand des Erstellungsdatums aller Dateien...
for %%i in (%QuellDirFiles%) do (
for /f "tokens=1-3 delims=. " %%a in ("%%~ti") do (
if not exist "%ZielDirRoot%\%%c-%%b-%%a" md "%ZielDirRoot%\%%c-%%b-%%a"
:: Verschieben dieser Dateien...
move "%%~fi" "%ZielDirRoot%\%%c-%%b-%%a"
)
)
@echo off & setlocal
Hoffe ihr könnt mir helfen. habe schon alles durchsucht aber ich bin nicht os fit im Batch schreiben.
Worum geht es:
Habe bisher eine Batch geschrieben die Datein der Überwachungskamera einliest und diese in entsprechende Tagesunterverzichnisse sortiert.
Soweit so gut.
Nun kommen diese Datein aber katastrophal an, so dass ich Sie keiner Uhrzeit der Aufnahme zuordnen kann.
Datein sehen in etwa so aus:
00626E4032FF(Kamer schwenk)_1_20120802021540_13093.jpg
00EA21634B5D(Kamera Fest)_1_20120802042445_1136.jpg
Im Prinzip soll das ÄNDERUNGSDATUM bzw ÄNDERUNGSZEIT als Grundlage dienen diese dann komplett umzubennnen nach folgendem Schema:
STUNDE24/MINUTE/SEKUNDE--TAG/MONAT/JAHR.Jpg
Am besten wäre es natürlich, wenn er unterverzeichnisse die er schon mal hatte auslässt oder bzw. man auswählen kann. Ansonsten kopiere ich es halt in das Verzeichnis in dem ich es brauche.
Unterverzeichnisse haben folgendes Schema:
2012-07-27
2012-07-28
2012-07-29
2012-07-30
Meine bisherige Batch sieht so aus:
@echo off & setlocal
:: Festlegen der Variablen für Quell und Zielverzeichnis...
set "QuellDirFiles=K:\Kamera\Unsortiert\Laden1\*.*"
set "ZielDirRoot=K:\Kamera\Laden1\"
:: Erstellen der Ordner Anhand des Erstellungsdatums aller Dateien...
for %%i in (%QuellDirFiles%) do (
for /f "tokens=1-3 delims=. " %%a in ("%%~ti") do (
if not exist "%ZielDirRoot%\%%c-%%b-%%a" md "%ZielDirRoot%\%%c-%%b-%%a"
:: Verschieben dieser Dateien...
move "%%~fi" "%ZielDirRoot%\%%c-%%b-%%a"
)
)
@echo off & setlocal
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Kommentar vom Moderator Biber am 02.08.2012 um 15:10:47 Uhr
Datein per batch umbennen
Set /a rgc+=1#837
... als Grundlage dienen diese dann komplett umzubennnen
Set /a rgc+=1#838
Hmmm...fast.
Kann auch sein, dass ich mich verzählt habe.
[/Update]
Set /a rgc+=1
#839
[/Update2]
Wie benne ich jetzt die Datein aus allen Unterordnern um ?
Set /a rgc+=1#840
...ich benne um, du bennst um, er/sie/es bennt um, alle bennen um.
... ich bannte um, du banntest um, er/sie/es bannten wie blöd.
...wir werden bis morgen noch viel umbannt haben.
Ich liebe dieses Forum.
Content-ID: 189023
Url: https://administrator.de/forum/datein-per-batch-umbennen-189023.html
Ausgedruckt am: 17.04.2025 um 08:04 Uhr
6 Kommentare
Neuester Kommentar
Halli hallo hallöle,
ich glaube das hatten wir doch schon 1000mal. Hast Du mal die Suchfunktion benutzt, oder Programmiersprachen Batch & Shell Übersicht nachgeschaut?
Sorry ich bin grade in Siesta, deswegen suche ich nicht für Dich
Gruss Penny.
ich glaube das hatten wir doch schon 1000mal. Hast Du mal die Suchfunktion benutzt, oder Programmiersprachen Batch & Shell Übersicht nachgeschaut?
Sorry ich bin grade in Siesta, deswegen suche ich nicht für Dich
Gruss Penny.
Hallo Marc.P.Neumann!

Wenn Du per Batch das Änderungsdatum einer Datei ausliest, werden keine Sekunden angezeigt - insofern würde sich vielleicht der Timestamp im bisherigen Dateinamen (oder bedeutet "20120802021540" nicht das, was ich vermute?) als Basis anbieten.
Außerdem sind Dateinamen wie
nicht nur syntaktisch in Windows nicht zulässig, sondern mE auch nicht sonderlich informativ - ich würde eher etwas in der Art von
verwenden.
Grüße
bastla
Habe bisher eine Batch geschrieben
So eine habe ich auch schon mal geschrieben, sie aber dann als "Code" formatiert gepostet ... Wenn Du per Batch das Änderungsdatum einer Datei ausliest, werden keine Sekunden angezeigt - insofern würde sich vielleicht der Timestamp im bisherigen Dateinamen (oder bedeutet "20120802021540" nicht das, was ich vermute?) als Basis anbieten.
Außerdem sind Dateinamen wie
02/15/40--02/08/2012.jpg"
2012-08-02_021540.jpg"
Am besten wäre es natürlich, wenn er unterverzeichnisse die er schon mal hatte auslässt oder bzw. man auswählen kann.
Was Du damit meinst, verstehe ich nun leider gar nicht ...Grüße
bastla