Задать вопрос
@lazix

Чем массово изменить дату изменения файлов (исходя из имени)?

Могучие умы, посоветуйте, пожалуйста, чем можно сотне файлов типа IMG_20170601-125533.jpg изменить ДАТУ ИЗМЕНЕНИЯ или СОЗДАНИЯ файла по образцу имени?

Поясню - слил с андроид-телефона фотки, прогнал их через iCatalyst, чтоб немного сократить размер и когда залил обратно, все галереи, сортирующие по времени изменения (или как там по дефолту в андроиде), не показывают хронологию корректно.
  • Вопрос задан
  • 4397 просмотров
Подписаться 1 Простой 2 комментария
Решения вопроса 1
@lazix Автор вопроса
Вопрос про метаданные навёл меня на решение: jhead.
А именно jhead -ft *.jpg
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@CodARM
Мой вам совет, забейте в яндексе: powershell изменение даты создание файла
Возможно программа renamer вам тоже поможет, но это не точно.
Ответ написан
Комментировать
@res2001
Developer, ex-admin
Стандартными средствами дату/время файла можно поменять разве что скриптом на JS/VBS/PoSh.
Можно воспользоваться, например, этой утилитой или портированной с линуксов touch (есть в составе msys2/mingw).
Чтоб выдернуть дату/время из названия воспользуйтесь этим скриптом:
@echo off
setlocal enabledelayedexpansion
set "filemask=.\*.jpg"

for /f "tokens=* delims=" %%a in ('dir /b "%filemask%" ') do (
	set "file=%%~na"
	set "YEAR=!file:~4,4!"
	set "MONTH=!file:~8,2!"
	set "DAY=!file:~10,2!"
	set "HH=!file:~13,2!"
	set "MM=!file:~15,2!"
	set "SS=!file:~17,2!"

	echo.!YEAR! !MONTH! !DAY! !HH! !MM! !SS!
)

Вместо команды echo нужно вставить запуск утилиты touch с соответствующими параметрами, дату сформировать из переменных, которые инициализируются из имени файла.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы