Это неправильный синтаксис, но copy file+
обновит последний записанный атрибут файла без внесения каких-либо изменений в содержимое.Файл должен находиться в текущем каталоге.
Вышеуказанное работает в Vista.Я также видел copy file+,,
вместо этого.Это также работает в Vista, и, возможно, эта форма требуется в некоторых других версиях Windows.
Я не уверен, что вы имеете в виду, когда говорите, что «отключили сохранение метки времени с помощью fsutil behavior set disablelastaccess 1
».Последняя записанная метка времени будет обновляться при каждом изменении файла.Единственное, что отключено, это обновление последней отметки времени доступа.Это стандартное поведение Vista в будущем.Последняя отметка времени доступа в любом случае бесполезна, поскольку Windows не устанавливает ее надежно при доступе.
Вы можете легко обновить последнюю записанную отметку времени для всех файлов в каталоге и подкаталогах, используя следующий скрипт.
@echo off
setlocal
for /d /r "someDirectoryPath" %%D in (.) do (
cd "%%D"
copy *+
)