Назад | Перейти на главную страницу

batch - Время последнего изменения файла в секундах

Я хочу знать, когда файл был изменен в последний раз.

Я могу получить эту информацию, используя следующий пакетный скрипт:

FOR %%i IN (myfile) DO SET modif_time=%%~ti

Проблема в том, как получить вторую из последней модификации? и команда %~t возвращает дату и время только с часами и минутами.

Я могу проверить секунды, только вручную просматривая "окно свойств" файл за файлом.

Как я могу узнать время в секундах в пакетном режиме?

Используя фрагмент Powershell, вы можете преодолеть ограничение консоли:

FOR /f "usebackq tokens=2,3 skip=3" %%i IN (`powershell.exe "& {get-childitem .\foo -force | Select-Object FullName,LastWriteTime}"`) do set modif_time=%%i %%j

Также взгляните на этот фрагмент wmic.exe:

wmic datafile where name='c:\\temp\\myfile' get LastModified

Результат выглядит так:

LastModified
20150807125810.203014-420

Что также может подойти вам.