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

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

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

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

Сообщение Flasher »

Вахмурка писал(а):Да мне и ни к чему.
Тогда я не понимаю, в чём похвальба, если исходная задача в полном смысле не решена. Ты же отвечал на вопрос топикстартера.

ЗЫ: F1 и описания действий тут вообще ни к чему. Есть памятка. А что делать с файлами написано в названии.
Аватара пользователя
Tol!k
Сообщения: 1727
Зарегистрирован: Вт апр 01, 2008 20:02
Откуда: Арзамас

Сообщение Tol!k »

Про перенос времени даже не подумал,
потому что про него уже есть 3 темы http://www.google.com/search?as_q=touch ... .wincmd.ru
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

oshizelly, LonerD, а менять нужно только даты? Остальные атрибуты не трогаем?
Аватара пользователя
Вахмурка
Сообщения: 2587
Зарегистрирован: Пн дек 27, 2004 14:47
Откуда: Большая деревня Москва
Контактная информация:

Сообщение Вахмурка »

Тогда я не понимаю, в чём похвальба
Хвалю за то, что его батник работает.
исходная задача в полном смысле не решена
Вот исходная задача:
В TC можно "взять" атрибуты файла на активной панели и присвоить их выделенному файлу (или файлам) на пассивной панели
Ты же отвечал на вопрос топикстартера.
Не совсем. Я отвечал вот на что:
Нельзя ли для менее продвинутых юзеров хотя бы парой слов пояснить, что с этим батником делать?
F1 и описания действий тут вообще ни к чему. Есть памятка
Назови памяткой, документацией, манулом, справкой - суть не в этом. Что такое батник, скажет яндекс. А вот как его прикрутить к Тоталу - будьте любезны изучать матчасть.

2oshizelly
Подай голос - ты получил что хотел?
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Вахмурка писал(а):Вот исходная задача
А остальные условия обрубились? Так не бывает..
Вахмурка писал(а):Назови памяткой, документацией, манулом, справкой - суть не в этом.
Суть в том, чтобы не писать по сто раз одно и то же...
Вахмурка писал(а):А вот как его прикрутить к Тоталу - будьте любезны изучать матчасть.
Матчасть в твоём понимании - это то, что написано в справке ТС? Так там о привязке сценариев ни слова.
Аватара пользователя
Вахмурка
Сообщения: 2587
Зарегистрирован: Пн дек 27, 2004 14:47
Откуда: Большая деревня Москва
Контактная информация:

Сообщение Вахмурка »

Так там о привязке сценариев ни слова
Как же:
You must give the extensions .com and .bat
Насчет памятки: дело ты сделал хорошее, спору нет. Да вот только сомневаюсь, что все новички сначала прилежно изучают справку ТС, потом - вики, потом - все прилепленные темы, потом - общий поиск по форуму, и лишь затем, не найдя ответа, задают вопрос. Будь оно так, на форуме была бы тишь да гладь: все все знают, спрашивать и отвечать не о чем. Вопрос об обязательном предварительном изучении всех упомянутых справочных материалов поднимался не раз, а воз и ныне там.
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Аватара пользователя
LonerD
Сообщения: 1174
Зарегистрирован: Вт янв 04, 2011 03:56
Откуда: Макеевка
Контактная информация:

Сообщение LonerD »

LonerD, а менять нужно только даты?
Мне достаточно только переноса даты.
Весьма желательна работа не только с файлами как таковыми - но и с каталогами (считать с них дату, перенести дату на другой каталог).
Аватара пользователя
oshizelly
Сообщения: 52
Зарегистрирован: Вт сен 04, 2012 14:08

Сообщение oshizelly »

Tol!k и Вахмурка
Большое спасибо за батник и подробные пояснения.
Вот только это, к сожалению, не тот функционал, о котором я просил (и LonerD тоже). Вероятно, ввело в заблуждение неудачное название топика, прошу извинить. На самом деле речь шла о переносе значений времени создания и модификации файлов. Именно это делает утилита от Volniy - и, надеюсь, будет делать решение от Flasher.
А к атрибутам это имеет только то отношение, что в TC изменение штампов времени файла засунуто в диалог изменения атрибутов.

Flasher
менять нужно только даты? Остальные атрибуты не трогаем?
Что касается меня, то дат создания, модификации и последнего доступа вполне достаточно. Ибо, как уже было сказано мною же на предыдущей странице, вряд ли кому-то понадобится копировать с одного файла на другой, например, атрибут System или Hidden

Вахмурка
BatchCopyDate http://powerpro.wincmd.ru/Scripts/BatchCopyDate.htm, конечно, хорошая штука. Вот только очень уж ограничены случаи применения:
Присваивает дату и время создания и изменения файлов в противоположной панели (источник) одноименным файлам в текущей панели (приемник)
Не говоря уж про обязательную установку PowerPro.

P.S
На правах топикстартера уточнил заголовок. Надеюсь, не нарушил этим правил? Ежели чего, пусть модераторы восстановят, как было.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Что-то пока не смог найти, как на vbs менять дату создания и последнего доступа. C датой модификации проблем нет, это быстро. Видимо, придётся утилиту цеплять. Завтра попробую окончательно разобраться.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

LonerD писал(а):Неплохо бы предусмотреть копирование атрибутов с файла под курсором на все выделенные файлы, которые находятся в той же самой панели
LonerD писал(а):Мне достаточно только переноса даты.
Весьма желательна работа не только с файлами как таковыми - но и с каталогами
Если в тоталовском диалоге изменения атрибутов создать шаблон операции, в который добавить атрибуты “Дата модификации”, “Дата создания” и “Дата последнего доступа” из встроенного плагина tc, то для переноса даты на выделенные файлы/каталоги, достаточно будет в диалоге выбрать шаблон (если он ещё не был выбран ранее), нажать кнопки “Загрузить из файла под курсором” и OK.
Аватара пользователя
oshizelly
Сообщения: 52
Зарегистрирован: Вт сен 04, 2012 14:08

Сообщение oshizelly »

sa
для переноса даты на выделенные файлы/каталоги, достаточно будет в диалоге выбрать шаблон (если он ещё не был выбран ранее), нажать кнопки “Загрузить из файла под курсором” и OK.
Вполне рабочая идея, спасибо!

Тем не менее хотелось бы обойтись еще меньшим количеством жимокликов. В идеале - один-единственным, как это позволяет утилита CopyAttr.exe, повешенная на хоткей пользовательской команды.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

oshizelly писал(а):хотелось бы обойтись еще меньшим количеством жимокликов
Вызов диалога и нажатие кнопок “Загрузить из файла под курсором” и OK можно сделать скриптом (но многим это не понравится…)

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

'==================================================================================
' Описание:   Установить атрибуты выделенных файлов/каталогов из файла под курсором
' Требования: Необходима регистрация WSH Helper for TC by Volniy
'==================================================================================
Option Explicit
Dim TCS
Set TCS = CreateObject("TCScript.Helper")
TCS.SendCommand 502 'Изменить атрибуты
TCS.Pause = 100
TCS.SendKeystroke "+{TAB 7}{SP}{TAB}{SP}{TAB 2}{SP}{TAB}{ENTER}"
Set TCS = Nothing
Wscript.Quit
Add.
Обнаружил неприятную особенность в диалоге изменения атрибутов.
Кнопка “Загрузить из файла под курсором” не устанавливает (как того хотелось бы) галку “Использовать плагины:”, если в колонке “Значение:” не произошло никаких изменений при её нажатии.
А вот галка “Изменение даты/ времени:” после нажатия кнопки “Загрузить из файла под курсором” выставляется всегда (независимо от того поменялись ли значения полей “Дата:” и “Время:”). И это кажется более правильным поведением!
В связи с обнаруженным добавил в скрипте принудительную установку галки “Использовать плагины:”.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Flasher писал(а):Видимо, придётся утилиту цеплять.
Остановился на nircmd, но она криво часы меняет, на один час меньше. Кто подтвердит?

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

TOTALCMD#BAR#DATA
"%COMMANDER_PATH%\Utils\nircmd\nircmd.exe"
setfilefoldertime %V "" "" "01-01-2012 08:08:08"
wcmicons.dll,7
Далее смотрим по cm_SetAttrib
Аватара пользователя
oshizelly
Сообщения: 52
Зарегистрирован: Вт сен 04, 2012 14:08

Сообщение oshizelly »

Flasher писал(а):Далее смотрим по cm_SetAttrib
В смысле - куда смотрим и зачем? :?:
То есть, понятно, что cm_SetAttrib - это внутренняя команда TC. Вопрос, что конкретно с этой командой делать, чтобы проверить работу кнопки с Nircmd.exe?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

oshizelly
Я пишу про часы. Вот на них в поле "Время" и смотреть.
Что делать? Выполнить (любым доступным способом с установкой курсора на соотв. файле). :D
Я не настаиваю на cm_SetAttrib, можно и системный диалог свойств по Alt+Enter открыть и смотреть время напротив "Открыт:".
Если покажет 7 часов вместо 8, то баг подтверждается.
Ответить