Guten Tag,Umbenennen Datei mit Änderungsdatum mit Batch-Datei
Ich bin wahrscheinlich neu in der Erstellung von Batch-Datei. Mein Ziel ist es, Dateien vom Quell- in den Zielordner zu kopieren und die Datei mit dem Änderungsdatum umzubenennen, sobald sie im Zielordner sind. Ich habe eine Herausforderung aufgegeben, um das modifizierte Datum zu bekommen. Es zeigt oder umbenennt die Datei mit dem aktuellen Datum und nicht das Änderungsdatum. Hier ist mein Code für Ihre Referenz:
@echo off
setLocal EnableDelayedExpansion
::set tDate=%DATE:~10,4%%DATE:~4,2%%DATE:~7,2%
set tDate=%date:~7,2%-%date:~4,2%-%date:~10,4%
set source="C:\Source Folder"
set target=%userprofile%\Desktop\backup
for %%i in (%source%\AL*.*) do (
::set myfiledate=%%~ta
copy "%%i" "%target%\%tDate%_%%~nxi"
)
Ich schätze Ihre Eingabe in dieser Angelegenheit wirklich
Dank
Also - Sie setzen 'tdate' vom aktuellen Datum, dann scannen Sie das Verzeichnis und kopieren die Datei mit' tdate', so dass es keine Überraschung ist, dass die Zieldatei das aktuelle Datum als Teil des Namens hat. Es ist eine schlechte Übung, einen ':: Kommentar 'innerhalb eines Codeblocks zu haben - es ist ein defektes Etikett und kann zu unerwarteten Ergebnissen führen. – Magoo
Danke für die Eingabe. Ich nehme das bezüglich des Kommentars. also wie kann ich das geänderte Datum extrahieren und es an einen Dateinamen anhängen. – Djspooch
Lesen Sie die Hilfe von 'for' (geben Sie' /? 'In ein Komma-Eingabeaufforderungsfenster ein), insbesondere den Teil mit den' ~ 'Modifikatoren; Sie werden feststellen, dass es eine Möglichkeit gibt, das letzte Änderungsdatum zu erhalten. Beachten Sie, dass dies das Datum in einer vom Gebietsschema abhängigen Weise zurückgibt, genau wie '% DATE%' und '% TIME%' Variablen ... – aschipfl