Per Batch, Verzeichniss und enthaltene Dateien Zeitstempel ändern
Hallo Leutz
ich möchte/ muss von hunderten Verzeichnissen, tausende von Dateien den Zeitstempel ändern,
und zwar immer ein Verzeichnis und die enthaltenen Dateien auf das gleiche Datum/ Zeit setzen
die Verzeichnisnamen, Datum und Uhrzeit habe ich in Tabellen
wie kann ich das mit einer Batch-datei, und eventuell auch mit einem hilfstool lösen ?
so grob kann ich schon mit Batch schon umgehen, aber dafür finde ich keine Lösung
schon mal Danke vorweg
LG
RaidMan
ich möchte/ muss von hunderten Verzeichnissen, tausende von Dateien den Zeitstempel ändern,
und zwar immer ein Verzeichnis und die enthaltenen Dateien auf das gleiche Datum/ Zeit setzen
die Verzeichnisnamen, Datum und Uhrzeit habe ich in Tabellen
wie kann ich das mit einer Batch-datei, und eventuell auch mit einem hilfstool lösen ?
so grob kann ich schon mit Batch schon umgehen, aber dafür finde ich keine Lösung
schon mal Danke vorweg
LG
RaidMan
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 143400
Url: https://administrator.de/contentid/143400
Ausgedruckt am: 16.11.2024 um 11:11 Uhr
8 Kommentare
Neuester Kommentar
Hallo Raidman,
du suchst ein Touch utility. Ich benutze selber eins von Steve P. Miller oder
aber die GnuWin Coreutils, z.Bsp. von hier
Da sind noch jede Menge andere nützliche Portierungen dabei, Head Tail Tee usw.
Hier die Hilfe von Touch
Solltest du Hilfe bei der Umsetzung brauchen,
wäre das genaue Format einer solchen Zeile aus deiner Datei wichtig zu wissen.
Frohe Pfingsten
LotPings
du suchst ein Touch utility. Ich benutze selber eins von Steve P. Miller oder
aber die GnuWin Coreutils, z.Bsp. von hier
Da sind noch jede Menge andere nützliche Portierungen dabei, Head Tail Tee usw.
Hier die Hilfe von Touch
>touch --help
Usage: touch [OPTION]... FILE...
Update the access and modification times of each FILE to the current time.
Mandatory arguments to long options are mandatory for short options too.
-a change only the access time
-c, --no-create do not create any files
-d, --date=STRING parse STRING and use it instead of current time
-f (ignored)
-m change only the modification time
-r, --reference=FILE use this file's times instead of current time
-t STAMP use [[CC]YY]MMDDhhmm[.ss] instead of current time
--time=WORD change the specified time:
WORD is access, atime, or use: equivalent to -a
WORD is modify or mtime: equivalent to -m
--help display this help and exit
--version output version information and exit
Note that the -d and -t options accept different time-date formats.
Report bugs to <bug-coreutils@gnu.org>.
Solltest du Hilfe bei der Umsetzung brauchen,
wäre das genaue Format einer solchen Zeile aus deiner Datei wichtig zu wissen.
Frohe Pfingsten
LotPings
Das hat mit DOS nichts (mehr) zu tun, auch wenn es aus dem Sprachgebrauch nicht auszurotten ist.
Es handelt sich um 32bit Windows Konsolen Programme, die unter allen (noch) relevanten Windowsversionen laufen sollten.
Bei mir eben auch auf einem Win7 64 bit. Echte "DOS" Anwendungen sind normalerweise 16bit - die laufen bei mir nur noch in einer VM oder DOSbox. Edit: weil unter Win64bit keine 16-bit Anwendungen mehr unterstützt werden.
Gruß
Es handelt sich um 32bit Windows Konsolen Programme, die unter allen (noch) relevanten Windowsversionen laufen sollten.
Bei mir eben auch auf einem Win7 64 bit. Echte "DOS" Anwendungen sind normalerweise 16bit - die laufen bei mir nur noch in einer VM oder DOSbox. Edit: weil unter Win64bit keine 16-bit Anwendungen mehr unterstützt werden.
Gruß
Sorry, meine letzte Antwort ist wohl in meinen vielen Fenstern verlorengegangen.
es sollte mit Batch kein Problem darstellen ein Datum umzudrehen so das du alle Touch-Versionen benutzen kannst.
Wenn du das nicht selbst hinbekommst, poste eine Beispielzeile aus deiner Datei.
Gruß
es sollte mit Batch kein Problem darstellen ein Datum umzudrehen so das du alle Touch-Versionen benutzen kannst.
Wenn du das nicht selbst hinbekommst, poste eine Beispielzeile aus deiner Datei.
Gruß
Moin, diesem Zitat
Was Batch alleine nicht kann und auch das Tool nicht, können eben beide zusammen.
Die Werte für Base und Stamp könntest du natürlich auch aus einer Datei einlesen,
aber da du das Format trotz mehrfacher Aufforderung nicht verraten willst .....
GRuß
LotPings
wie kann ich das mit einer Batch-datei, und eventuell auch mit einem hilfstool lösen ?
so grob kann ich schon mit Batch schon umgehen, aber dafür finde ich keine Lösung
habe ich von Anfang an entnommen das es so kommen würde so grob kann ich schon mit Batch schon umgehen, aber dafür finde ich keine Lösung
Was Batch alleine nicht kann und auch das Tool nicht, können eben beide zusammen.
@Echo off
set Touch="c:\tools\GnuWin32\bin\touch.exe"
set "Base=J:\2010-05-22\test dateien\*"
set "Stamp=201005220442.00"
Pushd "%Base%"
For /f "Delims=" %%A in (' Dir /B /A-D *.* ') Do %Touch% -t %Stamp% %%A
:: Variante mit Unterverzeichnissen durch :: auskommentiert
:: For /f "Delims=" %%A in (' Dir /B /S /A-D *.* ') Do %Touch% -t %Stamp% %%A
PopD
aber da du das Format trotz mehrfacher Aufforderung nicht verraten willst .....
GRuß
LotPings