serjoga
Goto Top

MP3 - Erstellungsdatum PLUS 1

Ordner und Dateien in A-Z Reihenfolge "DATIEREN"

Hi, ich habe ein Riesiges Problem,

bin im Besitz einer Yamaha Pianocraft E320, diese nutze ich mit einer Externen USB Festplatte als Abspielgerät für meine MP3s.

Das Riesen Problem aber ist: Das die Pianocraft die Dateien nach Erstellungsdatum sortiert (neuste/aktuellste zum schluss) und nicht nach A-Z... total kacke wie ich finde, da ich schon über die Jahre extra sortiert habe und zwar wer hätte es gedacht: Nach Interpret.

Meine Frage nun: Ich suche eine Möglichkeit das Erstellungsdatum jeder Datei + Ordner zu verändern (in A-Z reihenfolge also einfach nacheinander)
ABER jeweils UM EINS inkrementiert
zb->

- "Ordner1" Datum-----------------> 01.01.2000 - 00:01:00
- Datei1 im "Ordner1" Datum -> 01.01.2000 - 00:02:00
- Datei2 im "Ordner1" Datum -> 01.01.2000 - 00:03:00
- "Ordner2" Datum----------------> 01.01.2000 - 00:04:00
- Datei1 im "Ordner2" Datum -> 01.01.2000 - 00:05:00
- ...
- usw

Hab ein Bildchen hinzugefügt
6811569087cdfbfafa70b6dd569a768c-datei

So habe ich mir das gedacht, habe schon ein Programm (Freeware) das fast das gleiche tut, ABER es unterstützt keine Unterordner und meine MP3s sind ja noch in Ordner gepackt, heisst ich muss jeden Ordner auswählen -> datum ändern -> datum der letzten datei ändern -> nächsten ordner auswählen -> usw. ziemlich viel aufwand face-smile

Ich hoffe ihr habt ein Paar Tips für mich, oder kennt ihr vll so ein Programm ? Google schon seit gestern ^^

MFG

Content-ID: 120047

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

Ausgedruckt am: 23.11.2024 um 02:11 Uhr

serJOga
serJOga 10.07.2009 um 14:22:20 Uhr
Goto Top
Hmmm... hat den keiner eine Idee ?
mfg
serJOga
serJOga 12.07.2009 um 14:00:20 Uhr
Goto Top
Zitat aus einem anderen Thread von "jutzin":

Zitat von @jutzin:
so müsste es gehen:

> @echo off && setlocal enabledelayedexpansion
> 
> set datum=%1
> if ()==(%1) set datum=01.01.2000
> 
> set /a sekunde=0
> set /a minute=0
> set /a stunde=0
> 
> for /f "usebackq delims==" %%i in (`dir /s /b *`) do set /a  
> sekunde=!sekunde!+1 && set strsekunde=0!sekunde!&& set
> strminute=0!minute!&& set strstunde=0!stunde!&& echo
> touch "%%i" %datum%  
> !strstunde:~-2!:!strminute:~-2!:!strsekunde:~-2! && if
> !sekunde! EQU 59 (set /a sekunde=-1 && set /a
> minute=!minute!+1 && if !minute! EQU 60 (set /a sekunde=-1
> && set /a minute=0 && set /a stunde=!stunde!+1))
> 

benutzung: name_des_batchfiles {tag, formatiert wie fürtouch}

der code gibt Dir zur sicherheit erstmal nur die touch-befehle aus,
die ausgeführt würden, wenn der code "scharf"
wäre. zum scharfmachen musst Du das echo vor dem touch in
zeile 10 entfernen; ich hab's nämlich nicht mit dem
touch-tool überprüft.

der code funktioniert allerdings so nur mit stunden, minuten u
sekunden, d.h. es wird nach 24*60*60=86400 dateien/ordnern nicht mehr
funktionieren, da dann der stundenzähler auf 24 springt und touch
dann vermutlich einen fehler ausgibt. wenn Du mehr als 86400
dateien/ordner hast, musst Du noch einen zähler einbauen, der,
sobald der stundenzähler auf 24 springt, das datum inkrementiert
und die anderen zähler auf 0 setzt (bzw. den sekundenzähler
auf -1).

gruß
jutzin



Zitat von @jutzin:
hm, also dann weiß ich auch nicht weiter, da scheint die
touch.exe noch ein sog. undokumentiertes feature zu haben.

anderer vorschlag: besorg Dir die
[http://sourceforge.net/projects/unxutils/files/unxutils/UnxUtils.zip/download
UnxUtils] , da ist auch 'n touch-tool dabei. dieses tool erwartet
etwas andere parameter...




Zitat von @jutzin:
möglicherweise verschluckt sich das touch, wenn es mit ordnern
konfrontiert wird. andererseits sollte es anschließend trotzdem
normal weitergehen... wie auch immer, ich habe die ordner mal
rausgenommen aus der schleife. ich habe den folgenden code mit 47232
dateien getestet. meine erster erzeugter touch-befehl sah so aus:
touch -t 010100002000.01 "E:\file1.dat" und mein letzter
so: touch -t 010113072000.12 "E:\file47232.dat". ich
habe das nicht in der scharfen version getestet, aber m.e. entsprechen
diese befehle der touch-parameter-syntax. evtl. liegt der fehler bei
Dir bei dateinamen mit sonderzeichen? chcp 1252 könnte
vielleicht abhilfe schaffen. der einfachheit halber hier nochmal der
komplette code für die batch:
> @echo off && setlocal enabledelayedexpansion
> 
> chcp 1252
> 
> set datum=%1
> if ()==(%1) set datum=01.01.2000
> set DD=%datum:~0,2%
> set MM=%datum:~3,2%
> set CCYY=%datum:~6,4%
> 
> set /a sekunde=0
> set /a minute=0
> set /a stunde=0
> 
> :: befehl für die touch-version von biber
> ::for /f "usebackq delims==" %%i in (`dir /s /b *`) do set  
> /a sekunde=!sekunde!+1 && set strsekunde=0!sekunde!&&
> set strminute=0!minute!&& set strstunde=0!stunde!&&
> echo touch "%%i" %datum%  
> !strstunde:~-2!:!strminute:~-2!:!strsekunde:~-2! && if
> !sekunde! EQU 59 (set /a sekunde=-1 && set /a
> minute=!minute!+1 && if !minute! EQU 60 (set /a sekunde=-1
> && set /a minute=0 && set /a stunde=!stunde!+1))
> 
> :: befehl für die touch-version von unxtools
> for /f "usebackq delims==" %%i in (`dir /s /b /a:-d *`) do  
> set /a sekunde=!sekunde!+1 && set
> strsekunde=0!sekunde!&& set strminute=0!minute!&& set
> strstunde=0!stunde!&& echo touch -t
> %MM%%DD%!strstunde:~-2!!strminute!%CCYY%.!strsekunde:~-2!
> "%%i" && if !sekunde! EQU 59 (set /a sekunde=-1  
> && set /a minute=!minute!+1 && if !minute! EQU 60 (set
> /a sekunde=-1 && set /a minute=0 && set /a
> stunde=!stunde!+1))
> 
serJOga
serJOga 18.07.2009 um 15:34:17 Uhr
Goto Top
hi, also vielen dank nochmal, ja du hast recht sonderzeichen sind vorhanden, habe es aber noch nicht ausprobiert ob es zu fehlern kommt (teste mit vielen textdateien nummeriert)

soo du hast ja noch die "ordner_zeit_aenderungsprogramme" geschrieben , hab sie völlig vergessen, gehe gleich mal testen

mfg

PS: achsoo noch ne frage: benutzt du irgendein programm zur pogrammierung ? oder alles mit dem texteditor ? habe "Proton" gefunden, macht die befehle farbig zur besseren übersicht

PS2: also irgendwie funken die "ordner_zeit_aenderungsprogramme" nicht, sonst wäre alles gelöst, er übernimmt irgendwie nicht die uhrzeit von der ältesten datei
serJOga
serJOga 18.07.2009 um 15:53:53 Uhr
Goto Top
Zitat von @jutzin:
benutze für's scripten und für viele andere sachen pspad, das
ist m.e. ist unschlagbare freeware editor.

gruß
jutzin