Автоматизация переноса атрибутов и времени изменения файлов

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

werst
Сообщения: 7
Зарегистрирован: Вт апр 18, 2017 13:44

Сообщение werst »

Flasher
проблема там может быть только одна, она мной указана - неверный путь в шапке до утилиты
Точно! У меня: Utilites\nircmd\nircmd.exe , а в скрипте: Utils\nircmd\nircmd.exe, поэтому и не запускалось, теперь работает ,но не берет подпапки ,хотя флаг рекурсии стоит в параметре %V %T%M 7 1. Пользуюсь скриптом , тот что , для одного файла/папки.
Кстати, а где и кто скрипт-то посоветовал?
Узнал просто, искал в поисковике возможность синхронизировать папки и попал на эту тему.Вообще прочитал здесь много тем - по временным атрибутам, видимо многих волнует этот вопрос.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

werst писал(а):хотя флаг рекурсии стоит в параметре %V %T%M 7 1
Опять первые два неверно указаны. Я с чего начал? И при таких параметрах он никак не смог бы отработать.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

werst
Также можно попробовать применить плагин CopyTree.
При операции упаковки (Alt+F5) (из панели с выделенными оригинальными папками в панель, где находятся папки с неправильными датами) в настройках этого архиваторного плагина выбрать Копировать временные метки каталогов (и при необходимости, Копировать все три временных метки), а в поле Файлы только типа: указать какой-нибудь несуществующий тип файлов (например, *.tra-ta-ta) – чтобы избежать копирования файлов.
werst
Сообщения: 7
Зарегистрирован: Вт апр 18, 2017 13:44

Сообщение werst »

Flasher
Опять первые два неверно указаны.
Нет, я использую сокращенный скрипт , тот что для одного файла/папки и он срабатывает с параметром : %V %T%M <индекс>, но не берет подпапки, хотя рекурсию ставил 1.Может я не правильно его сократил? Заменив последние 11 строк на: WSH.Run Nircmd & " setfilefoldertime """ & List & """ " & P.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

werst
Ну, если т-а-а-а-к сокращать, то можно и сокращённым назвать. Я бы точно не смог догадаться, о чём речь. Так и где в приведённом посте хоть что-то про последние 11 строк? Там приведено ровно 3 конкретных строки и не одной больше. Но это касалось правки только для одного файла.
Если говорить ещё и о рекурсии для одной папки, то менять в исходнике нужно это:

Код: Выделить всё

For Each F in Split(FSO.GetFile(List).OpenAsTextStream(1, -1).ReadAll, L)
  If FSO.FolderExists(F) Then
    F = Left(F, Len(F) - 1) : ForFile F, P
    If C = 4 Then : Set F = FSO.GetFolder(F) : ForFolder F, P : End If
  Else ForFile F, P : End If
Next : Set FSO = Nothing : Set WSH = Nothing : Set Shell = Nothing : WScript.Quit
на это:

Код: Выделить всё

If FSO.FolderExists(List) Then
  ForFile List, P : If C = 4 Then Set List = FSO.GetFolder(List) : ForFolder List, P
Else ForFile List, P : End If
Последний раз редактировалось Flasher Пт апр 21, 2017 04:00, всего редактировалось 3 раза.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
werst
Сообщения: 7
Зарегистрирован: Вт апр 18, 2017 13:44

Сообщение werst »

Flasher
Спасибо ! Теперь работает и с подпапками , но теперь другая напасть: стало меняться и время и самих файлов :( с фотографиями это конечно не айс , т.к. в папках фотки с разным временем. Нельзя ли сделать так, чтобы сами файлы не меняли свои атрибуты?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

werst
3 строку снизу исходника удалить или закомментировать. И в пред. посте нижний кусок слегка поправил.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
werst
Сообщения: 7
Зарегистрирован: Вт апр 18, 2017 13:44

Сообщение werst »

Flasher
Все! Теперь то что надо! :D Строку закомментил, теперь файлы не трогаются.Да, у меня работает когда: F = Left ,а с последней правкой: List = Left ,нет. Пишет ,что путь не найден.Ну ладно , главное работает. Спасибо!
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

werst писал(а):последней правкой: List = Left ,нет
А, это же делалось для списка. Убрал лишнее.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Пожалуй, более правильным названием данной темы было бы "Автоматизация переноса атрибутов и времени изменения файла".
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Нет смысла для группы источников отдельно тему создавать. Лучше уж "объектов". А там видно будет.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
ZorKon71
Сообщения: 36
Зарегистрирован: Вт май 11, 2010 09:25
Откуда: Обираловка, МО

Сообщение ZorKon71 »

Доброго времени суток!

Даже и не думал, что можно так переносить атрибуты из файла на файл... Здорово!

Но у меня задачка попроще, может кто-нибудь помочь?

Есть такая программа Яндекс диск. На него можно заливать фото, и пока есть вариант с безлимитом. Уже несколько лет я пользуюсь программой, делаю альбомы и раздаю ссылки всей семье.
Хотел залить старые фото прошлых лет, но оказалось что ЯД не использует данные Exif. Ему нужна только дата файла из памяти телефона. Но дата создания и модификации файла при копировании с компьютера на телефон меняется на текущую. И это портит всю идею. А менять атрибуты вручную по одному - это уж очень долго.

Вопрос!
Можно ли создать такой скрипт, чтобы после копирования TC на телефон файлов фотографий и видео, в имени которых по определённому шаблону указана дата и время (ГГГ-ММ-ДД чч-мм-сс), выделить их и запустив скрипт - TC изменил атрибуты времени файлов в соответствии с данными из имени?

Спасибо!
TC 11.00, Win7/10x64
Аватара пользователя
Orion9
Сообщения: 1283
Зарегистрирован: Пн янв 01, 2024 17:18

Сообщение Orion9 »

ZorKon71 писал(а):Можно ли создать такой скрипт, чтобы после копирования TC на телефон файлов фотографий и видео
Можно. Но зачем усложнять, если проблема возникает при копировании на телефон. Нужно решить эту проблему, тогда и скрипт не понадобится.

Если подключить память телефона как сетевой диск, то, возможно, атрибуты не будут теряться, и даже старые атрибуты получится перенести на новые файлы в окне синхронизации.

Пара приложений, которые могут помочь:
https://github.com/GustavLindberg99/AndroidDrive
https://rsload.net/soft/traffic/26040-netdrive.html
Ответить