Ситуация такова. Мне нужно отредактировать много разных файлов в папке, но потом дата изменения поменяется, нарушится логика сортировки файлов по датам
Есть, конечно, обходы:
а) для единичных файлов скрипт или программа для изменения тэгов
б) можно переименовать все файлы в формат, состоящий из даты изменения, но это очень ситуативный метод (ну вон картинки в папке так можно, имена файлов там не важны)
Но хотелось бы решение на уровне файловой системы, если такое вообще возможно
На Raspberry Pi в настройках загрузчика можно прописать noatime для раздела ext4, это дата доступа к файлам, может, есть аналог в Windows на дату изменения файлов, но я ничего применимого для массового редактирования не нашёл
Это все костыли и решение проблем XY из-за хранения файлов кучей в файловой системе.
Если вам нужна полноценная работа с данными - нужна система, которая хранит информацию о файлах, оставляя файловой системе только собственно хранение.
noatime не позволяет отредактировать файл без изменения его даты модификации - mtime.
Он просто отключает запись atime - даты последнего доступа к файлу (в т.ч. и на чтение).
winitpro.ru изменение параметров файла через powershell
Ps в линуксе для ntfs noatime тоже работает
Pss Нативная блокировка обновления даты изменения файлов (Last Modified) в NTFS невозможна, так как это критическая функция ведения журнала файловой системы
Написать скрипт, который сделает то, что вам нужно. Сначала получаете список: файл плюс дата и время. Далее редактируете, а после проходите по этому списку, например с помощью nircmd -> setfiletime для возврата даты. Можно написать бантик или использовать любой автоматизатор. Для получения и изменения даты файла используется WinAPI вызовы GetFileTime и SetFileTime.
попробуйте symbolic link ссылки на файл, создав символические ссылки на файлы, изменив их в исходном месте (или открыв по симлинку), не изменит метаинформацию о времени в симлинке... т.е. однократно сделав симлинки на все ваши файлы, и в последствии работая с этими симлинками, даты у этих симлинков меняться не будут (они будут меняться у оригинальных файлов).
делать с помощью mklink исходный_файл имя_симлинка
симлинки делать можно с тем же именем но в другом каталоге
p.s. с ключом /h будут созданы hardlink (только в пределах одного физического тома, когда как симлинки могут быть на другом ntfs томе), работают они по другому, вроде бы дата изменения у них должна так же меняться, советую протестировать поведение, для собственной справки...