Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Datei Erstellungsdatum per Batch ändern

Frage Entwicklung Batch & Shell

Mitglied: SavMaz

SavMaz (Level 1) - Jetzt verbinden

16.11.2008, aktualisiert 17.11.2008, 17853 Aufrufe, 9 Kommentare

Hallo,

zuerstmal grosses Lob an diese Community hier, die umfangreichen Beiträge haben mir hier schon sehr oft weitergeholfen, nun stehe ich aber leider vor einem Problem, wo ich wirklich nirgends mehr etwas gefunden habe, deshalb meine Frage an alle Batch Script Experten:

Wie (ich frage nicht bewusst "ob", da ich weiß, dass alles geht - die Frage ist nur WIE ;) ) kann man per Batch das Erstellungsdatum von Dateien ändern??

Hintergrund:
Habe einen Autoradio mit USB Anschluss angeschafft - nun ist dieses Teil so schlau und sortiert sowohl Ordner als auch Dateinamen nach Erstellungsdatum, nicht nach Name....
Ich möchte nun auf dem schnellst möglichen weg eine Datenmenge von 8GB MP3´s (d.h. sehr viele, kleinere Files - keine großen wenigen!) das Erstellungsdatum einer Alphabetischen Sortierung anpassen. Für die Ordner-Sortierung habe ich bereits ein funktionierendes Batch, siehe weiter unten - jedoch werden damit dann die Files im Ordner teilweise noch immer nicht richtig sortiert, falls eben nicht in alphabtischer Reihenfolge raufkopiert. Folgende Varianten habe ich ausprobiert:

- Div Tools zum ändern des Erstellungsdatums (TotalCommander, QuickAttrib, etc) ändern zwar die Files, jedoch nicht die Folder (die Funktion Folder Datum ändern gibt es zwar, im Root Verzeichnis am PC wird auch das korrekte (geänderte Datum) angezeigt, wenn man jedoch z.B. mit Total Commander ins Verzeichnis wechselt, werden die ".." noch immmer mit dem originalen Datum/Zeit angezeigt
--> daher unbrauchbar, der Autoradio sortiert nur die Dateien in Ordnern, jedoch nicht die Ordner

- mein Batch: es wird einfach jedes Verzeichniss (es gibt immer nur max 1 Ordner ohne Unterordner im Root!) umbenannt, dann der ein neuer Ordner mit Originalem Namen erstellt und die Files zurückverschoben
--> das ist schon brauchbarer, da nun wenigstens die Ordner richtig sortiert sind, die Files darin eben aber noch nicht

- Alles einfach in alphabetischer Reihenfolge neu auf den USB Stick kopieren
--> funktioniert, dauert aber viiieeeel zu lange

- eine Kombination aus den ersten beiden Varianten ist möglich und funktioniert, jedoch zu umständlich (es sollte wenn geht auch meine komplett PC unerfahrene Frau bedienen können), außerdem bevorzuge ich die elganteren Lösungen ;)

und falls es hilft, mir steht eigentlich überall Vista zur Verfügung, daher also stehen auch die evtl. neuen zusätzlichen (erweiterten) Commandline-Tools zur Verfügung!!

Achja, hier noch mein Ansatz von Batch-Lösung:

@echo off

set USBDrive=d:\test

if exist "%USBDrive%\re_sort_temp" rmdir "%USBDrive%\re_sort_temp" /S /Q

for /f "delims= tokens=1" %%i in ('dir %USBDrive% /O:N /B') do (
ren "%USBDrive%\%%i" "re_sort_temp"
md "%USBDrive%\%%i"
move "%USBDrive%\re_sort_temp\*.*" "%USBDrive%\%%i"
rmdir "%USBDrive%\re_sort_temp" /S /Q
)

bin für jeden Tipp/Vorschlag offen - leider kann ich nur Batch-Skript, VB wäre aber sicher auch eine Möglichkeit....

Grüße
Andi
Mitglied: Janni
16.11.2008 um 21:26 Uhr
Kein Batch, aber Google liefert: http://www.snapfiles.com/get/timestamptoucher.html
Bitte warten ..
Mitglied: bastla
16.11.2008 um 21:49 Uhr
Hallo SavMaz und willkommen im Forum!

Ändere das "move" in ein "copy" und nachfolgendes "del" - dadurch wird (siehe Beschreibung von NTFS-Datums- und Zeitstempeln für Dateien und Ordner - auch für FAT-Partitionen) das Erstellungsdatum der Datei geändert.

Kopieren musst Du zwar immer noch, aber das lässt sich ja automatisieren, und, da es sich um kleinere Dateien handelt, musst Du auch nur soviel freien Speicherplatz haben, wie die größte Datei benötigt.
Alternativ könntest Du ein Commandline-"touch"-Tool suchen ...

Grüße
bastla
Bitte warten ..
Mitglied: SavMaz
16.11.2008 um 22:16 Uhr
Hallo bastla,
Hallo Janni,

danke für die schnelle antwort - habe das mal mit touch erweitert, leider ändert der nur das zugriffsdatum - der player braucht aber das erstelldatum
Kennst du vielleicht ein ähnliches tool, welches auch auf das Erstelldatum greift??

Copy ist schon klar, besser sogar mit xcopy, aber das möchte ich erst als allerletzte Möglichkeit in Betracht ziehen

das Tool im Link von Janni hatte ich schon probiert, habe schon sämtliche Google-Freeware Tools probiert und bei allen oben genanntes Problem - es werden zwar die Attribute (auch in der "Eigenschaften" Anzeige von Win) richtig angezeigt bzw. gesetzt, nur erkenne ich den Grund, warum das dem Player egal ist, nur im WinCommander, wenn ich eben in den Ordner hinein wechsle, steht nur noch oben bei ".." noch das originale Datum - und (was auch immer das für ein Stamp sein soll) dürfte das Autoradio lesen....

Achja, für die, die es interessiert bzw. brauchen können, poste ich hier meine Erweiterung mit Touch.exe (einfach googeln und ins Windows\system32 kopieren!):

@echo off

set USBDrive=d:\test

if exist "%USBDrive%\re_sort_temp" rmdir "%USBDrive%\re_sort_temp" /S /Q

for /f "delims= tokens=1" %%i in ('dir %USBDrive% /O:N /B') do (
ren "%USBDrive%\%%i" "re_sort_temp"
md "%USBDrive%\%%i"
move "%USBDrive%\re_sort_temp\*.*" "%USBDrive%\%%i"
rmdir "%USBDrive%\re_sort_temp" /S /Q
)

for /f "delims=\ tokens=3,4" %%j in ('dir "%USBDrive%" /O:N /B /S') do touch "%USBDrive%\%%j\%%k"
Bitte warten ..
Mitglied: bastla
16.11.2008 um 22:25 Uhr
Hallo SavMaz!

Ich meinte nicht das "klassische" "touch", sondern Tools (wie zB Attribute Changer), mit denen jeder der 3 Timestamps auf einen beliebigen Wert gesetzt werden kann - allerdings natürlich mit Steuerung per Commandline ...

... wenn Du die aber auch schon alle durch hast, fällt mir auch nix anderes mehr ein ...

Grüße
bastla
Bitte warten ..
Mitglied: SavMaz
16.11.2008 um 23:06 Uhr
Hallo bastla,

hab mir den Attribut Changer angeschaut - den hatte ich noch nicht, aber das ist nur eine Shell Extension, kann nur leider keine Steuerung per Commandline finden - bist du sicher, dass das Tool sowas bieten soll?

Die Shell Extension arbeitet mit bereits beschriebenen Problem, jedoch bei Files wär´s ja ok, wenn ich´s jetzt noch irgenwie per commandline aufrufen könnte....

lg
Andi
Bitte warten ..
Mitglied: bastla
16.11.2008 um 23:14 Uhr
Hallo SavMaz!

... kann nur leider keine Steuerung per Commandline finden - bist du sicher, dass das Tool sowas bieten soll?
"Attribut Changer" kann das nicht (deswegen oben "allerdings ...") - sollte nur zeigen, was ich eigentlich mit "touch"-Tool gemeint hatte.

Mir ist leider kein derartiges Commandline-Programm bekannt (sonst hätte ich's Dir schon verraten ) ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
17.11.2008 um 00:03 Uhr
Hallo SavMaz!

Nachtrag: Mit WinTouch sollte das klappen. (Für den Download musst Du Dich allerdings registrieren - außerdem wird .NET 1.1 vorausgesetzt).

Die Datums-/Zeitangabe ist den Systemeinstellungen entsprechend vorzunehmen - also etwa:
wintouch -d "D:\Test" -p "Eine Datei.txt" -t "15.11.2008 15:11:20" -c
Grüße
bastla
Bitte warten ..
Mitglied: SavMaz
17.11.2008 um 09:20 Uhr
Hallo Bastla,

super, vielen, vielen Dank!!!!

das ist es, funktioniert nun bestens - nur zur Info: Folder werden mit dem Tool (wie mit allen anderen auch) zwar nicht korrekt geändert, dafür funktioniert eh schon mein Batch, jedoch werden nun die Files auch perfekt und richtig geändert!

Nochmals Danke für die super schnelle und kompetente Hilfe!!

Hier noch für alle, die es brauchen können, das fertig Script:
01.
@echo off 
02.
 
03.
set USBDrive=d:\test 
04.
 
05.
if exist "%USBDrive%\re_sort_temp" rmdir "%USBDrive%\re_sort_temp" /S /Q 
06.
 
07.
for /f "delims= tokens=1" %%i in ('dir %USBDrive% /O:N /B') do ( 
08.
ren "%USBDrive%\%%i" "re_sort_temp" 
09.
md "%USBDrive%\%%i" 
10.
move "%USBDrive%\re_sort_temp\*.*" "%USBDrive%\%%i" 
11.
rmdir "%USBDrive%\re_sort_temp" /S /Q 
12.
wintouch -d "%USBDrive%\%%i" -t "%Date% %Time:~1,7%" -c -a -m 
13.
)
Gruß
Andi

[Edit Biber 17.11.2008] Code in Code-Tags und Beitrag auf "erledigt" gesetzt.[/Edit]
Bitte warten ..
Mitglied: SavMaz
17.11.2008 um 10:37 Uhr
Hallo nochmals,

war leider zu schnell mit der guten Nachricht - ich verstehe die Welt derzeit nicht mehr...

folgendes habe ich feststellen müssen:

die Sortierung der Folder macht der Autoradio offensichtlich nicht nach dem "Erstellungsdatum" Flag, sonder etwas "ähnlichem" - und zwar genau so, wie der DIR Befehl ohne weitere Parameter...

mache ich ein dir F: werde die Ordner wieder "irgendwie" sortiert, mit dir F: /O:N alphabetisch, mache ich DIR F: /O:N /S werden die Ordner wieder irgendwie sortiert, trotz neu angelegter Ordner und wingetouchter files!?!?!???

Weiß irgendwer, nach welchen Kriterien die Dateien per DIR von einem USB Stick (mit FAT32) soriert werden? Auf einer NTFS Platte funktioniert oben beschriebener Batch bestens, jedoch leider eben nicht am Stick selbt....

Kann man den Beitrag irgendwie wieder auf Nicht-gelöst setzten??

Edit: hab es gefunden, hab mal das Gelöst-Häckchen vom Beitrag wieder entfernt!

Gruß
Andi
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datei nach Erstellungsdatum verschieben (2)

Frage von Kugelschreiber1 zum Thema Batch & Shell ...

Batch & Shell
gelöst Erstellungsdatum vor jede Zeile einer Textdatei schreiben (5)

Frage von freakonaleash zum Thema Batch & Shell ...

Batch & Shell
gelöst Teile eines Dateinamens ändern mit Batch Datei (4)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateinamen mit Batch-Datei ändern - Problem (9)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Neue Wissensbeiträge
Viren und Trojaner

Link: Neues Botnetz über IoT-Geräte

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Externe IP von innen erreichbar machen (15)

Frage von Windows10Gegner zum Thema Router & Routing ...

Windows Installation
Windows 10 neu installieren (12)

Frage von imebro zum Thema Windows Installation ...

Windows Server
Frage zu Server Rack (11)

Frage von rainergugus zum Thema Windows Server ...