Страница 1 из 1

Как изменить дату/время создания/редактирования файла/папки

СообщениеДобавлено: 01 ноя 2012 14:28, Чт
UncleFather
Проблема:

Необходимо изменить дату и время создания или редактирования файла или файлов или папки или папок.


Графическое решение:

Пользуемся бесплатной утилитой SetFileDate от компании No Nonsense Software.
Зеркало:
File Date Change.rar
(578.03 КБ) Скачиваний: 5392


Скриншот:
setfiledate_grab.gif


Программа не русифицирована, но визуально понятна.


Решение для командного (пакетного) файла, скрипта:

Качаем утилиту touch.exe или прямо отсюда:
touch.zip
(28.62 КБ) Скачиваний: 412


Благодаря набору UNIX Shell and Utilities многие, не решаемые в среде командной строки Windows задачи, можно решить с помощью unix-подобных утилит. И в том, числе, задачу изменения даты и времени создания, модификации и доступа файла или папки с помощью утилиты touch.exe.

Справку по работе с touch.exe можно получить при запуске утилиты с принятым в Unix ключом «--help»
touch.exe --help


При этом пользователю выводится краткая подсказка
touch [-acm] [-r|-f файл] [-t [[CC]YY]MMDDhhmm.[SS]] file файл

-a - Устанавливает время последнего доступа ( access )к файлу. Время последнего изменения не устанавливается, если явно не задан ключ -m ( modify )
-c - Указывает утилите не создавать файл, если он не существует.
-m - Устанавливает время последнего изменения файла.
-r file - Использовать значения времени из файла, заданного аргументом file.
-t time - Устанавливает время последнего изменения (модификации) и доступа в соответствии с указанным форматом date_time.
Формат даты, указанный в ключе -t задается в соответствии с шаблоном [[СС]YY]MMDDhhmm[.SS]:
СС - первые две цифры года (век).
YY - последние две цифры года.
MM - двузначный номер месяца.
DD - двузначный номер дня.
hh - значение часов даты.
mm - значение минут даты.
SS - значение секунд даты.


Примеры использования утилиты touch.exe в командной строке Windows:

Изменить время доступа и модификации файла C:\folder\myfile.txt на текущее. Если файл не существует, он будет создан с нулевой длиной и текущим временем создания, модификации и доступа:
Код: Выделить всё
touch C:\folder\myfile.txt

Изменить время доступа и модификации папки C:\folder на текущее:
Код: Выделить всё
touch C:\folder

Изменить время доступа и модификации папки C:\folder на время, установленное для файла C:\ntldr:
Код: Выделить всё
touch -f C:\ntldr C:\folder

Установить для существующей папки «C:\folder» значение даты и времени модификации - 1998г., 8 марта, 1 час : 2 минуты :00 секунд:
Код: Выделить всё
touch -t 199803080102.00 C:\folder

Установить для существующей папки «C:\folder» значение даты и времени модификации - текущая дата, 11 час : 12 минут :30 секунд:
Код: Выделить всё
touch -t 1112.30 C:\folder

Изменить только время доступа, время модификации не изменяется:
Код: Выделить всё
touch -a -t 2222.20 C:\folder



Кроме утилиты touch, для модификации времени файлов (но не папок) можно воспользоваться простой и удобной программой Юрия Усманова setdate. Скачать ее так же можно прямо здесь:
setdate.zip
(16.41 КБ) Скачиваний: 269


Примеры использования:

Установить для файла «C:\1.txt» дату создания 22.11.2011:
Код: Выделить всё
setdate.exe -c C:\1.txt 22.11.2011

Установить для файла «C:\1.txt» дату изменения (модификации) 22.11.2011:
Код: Выделить всё
setdate.exe -m C:\1.txt 22.11.2011

Установить для файла «C:\1.txt» дату доступа 22.11.2011:
Код: Выделить всё
setdate.exe -a C:\1.txt 22.11.2011

Установить для файла «C:\1.txt» все даты 22.11.2011:
Код: Выделить всё
setdate.exe -d C:\1.txt 22.11.2011


Источник.