Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Автоматизация переноса атрибутов и времени изменения файлов
Goto page 1, 2, 3 ... 9, 10, 11  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
oshizelly



Joined: 04 Sep 2012
Posts: 52

Post (Separately) Posted: Tue Sep 04, 2012 14:33    Post subject: Автоматизация переноса атрибутов и времени изменения файлов Reply with quote

В TC можно "взять" атрибуты файла на активной панели и присвоить их выделенному файлу (или файлам) на пассивной панели. Но делать это долго и неудобно, особенно с клавиатуры: вызвать диалог изменения атрибутов и долго и мучительно прыгать там табом между разными полями ввода и кнопками (поскольку акселераторов не предусмотрено). Та ещё морока...

В 2004-м году уважаемый Volniy написал замечательную утилитку CopyAttr.exe (http://volniy.nm.ru/copyattr.zip) размером 4 KB, которая по такому алгоритму копировала время создания и модификации файлов. Я приделал к ней хоткей через пользовательские команды, и восемь лет с благодарностью вспоминал автора. Однако TC за это время научился работать с юникодными именами файлов, а эта утилита - нет... Опять же появился аналогичный штатный функционал в самом TC, хоть и крайне неудобный в использовании.

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

Заранее спасибо!


Last edited by oshizelly on Wed Sep 05, 2012 21:07; edited 2 times in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Sep 04, 2012 15:57    Post subject: Reply with quote

Достаточно просто. Вечером могу сделать.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Tue Sep 04, 2012 16:19    Post subject: Reply with quote

oshizelly
Переложите, пожалуйста, утилитку - указанного сайта уже не существует.

Quote:
Достаточно просто. Вечером могу сделать.

У меня тоже в последнее время созрело желание заиметь такую утилитку или скрипт, но ещё не успел зареквестить Smile
Просьба учесть также возможность копирования не только атрибутов как таковых, но и даты изменения файла, а также переноса атрибутов/времени с указанного файла на несколько выделенных файлов в противоположной панели.

Неплохо бы предусмотреть копирование атрибутов с файла под курсором на все выделенные файлы, которые находятся в той же самой панели (если файлы лежит рядом, то не очень удобно и не очень логично открывать новую панель ради перенесения атрибутов).
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Tue Sep 04, 2012 16:32    Post subject: Reply with quote

LonerD wrote:
Переложите, пожалуйста, утилитку - указанного сайта уже не существует.

Интересно, с чего же я её тогда несколько минут назад благополучно скачал. Wink
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
oshizelly



Joined: 04 Sep 2012
Posts: 52

Post (Separately) Posted: Tue Sep 04, 2012 16:52    Post subject: Reply with quote

LonerD wrote:
Просьба учесть также возможность копирования не только атрибутов как таковых, но и даты изменения файла

Собственно, я тоже как раз именно копирование даты просил. И утилита Volniy именно это делала. Да и вряд ли кому-то понадобится копировать с одного файла на другой, например, атрибут System или Hidden Laughing

Остальные просьбы тоже поддерживаю.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Tue Sep 04, 2012 17:22    Post subject: Reply with quote

Quote:
Интересно, с чего же я её тогда несколько минут назад благополучно скачал.

Это тонкий намёк чтобы я сам прошёл квест? Smile
Я его прошёл.
Просто кликнуть на ссылку в первом посте и скачать, разумеется, не получается - открывается сайт qip.ru и ошибка 404. "Сохранить как" в браузере - сохраняет htm-страничку.
А вот если скопировать адрес ссылки, потом вставить его в новом окошке, - то файл скачивается. Хитро придумано, хотя и не понятно для чего такая хитрость.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Sep 04, 2012 18:09    Post subject: Reply with quote

LonerD wrote:
Просьба учесть также возможность копирования не только атрибутов как таковых, но и даты изменения файла, а также переноса атрибутов/времени с указанного файла на несколько выделенных файлов в противоположной панели.
Да в голове сразу такая мысль промелькнула. Не забывай, что для двух панелей хелпер нужен.
LonerD wrote:
Неплохо бы предусмотреть копирование атрибутов с файла под курсором на все выделенные файлы, которые находятся в той же самой панели (если файлы лежит рядом, то не очень удобно и не очень логично открывать новую панель ради перенесения атрибутов).
Не понял написанное в скобках. Зачем открывать новую панель?

Если есть свободное время, можешь пока потренироваться.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10236
Location: Россия, Саратов

Post (Separately) Posted: Tue Sep 04, 2012 18:25    Post subject: Reply with quote

LonerD
У меня, когда я отвечал с работы, как-то квест попроще вышел: именно что просто щёлкнул по ссылке и скачал через Download Master. А вот сейчас так не выходит, надо действительно копировать адрес.
P.S. А вот сейчас опять нормально закачивается... Так что в общем и целом ссылка рабочая.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Tue Sep 04, 2012 21:16    Post subject: Reply with quote

Quote:
Не понял написанное в скобках. Зачем открывать новую панель?

В запросе была фраза: заданные атрибуты... переносятся с выделенного файла в активной панели на выделенный файл в пассивной панели.

Но если два файла лежат в рядом в одном каталоге, то для такого переноса (с активной панели на пассивную), получается, нужно открывать новую вкладку с этим же каталогом на другой панели. А это уже не очень удобно Rolling Eyes

Я же прошу реализовать возможность переносить атрибуты не только на выделенные файлы пассивной панели, но и на выделенные файлы активной панели (то есть когда файл, с которого считываются атрибуты и файлы, на которые атрибуты переносятся, находятся на одной панели).
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Sep 04, 2012 21:41    Post subject: Reply with quote

LonerD
Да я прекрасно понял, о чём ты просишь. Я не понял необходимости открывать новую вкладку в другой панели. Зачем открывать, если уже открыто то, что нужно? По крайней мере мне это так представляется. А выбор панели - это вообще не проблема. Всё будет.

Насчёт сегодня уже не обещаю (вернусь под ночь).
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Tue Sep 04, 2012 22:43    Post subject: Reply with quote

Code:
@echo off &setlocal enableextensions
::   Выделенным файлам присвоить атрибуты файла с пассивной панели
::   Параметры:   "%WL" %T%M
::   Автор:   Tol!k

call :attr "%~2"
for /f "delims=" %%f in ('type "%~1"') do attrib %#% "%%f"
goto :eof

:attr
for /f "delims=" %%a in ('attrib "%~1"') do set "attr=%%a"
setlocal enabledelayedexpansion
set "attr=!attr:~0,10!"
for /l %%i in (0,1,9) do set "#=!#! +!attr:~%%i,1! "
endlocal &set "#=%#: + =%"
goto :eof
Back to top
View user's profile Send private message
oshizelly



Joined: 04 Sep 2012
Posts: 52

Post (Separately) Posted: Wed Sep 05, 2012 11:04    Post subject: Reply with quote

Tol!k
Нельзя ли для менее продвинутых юзеров хотя бы парой слов пояснить, что с этим батником делать? И каковы ожидаемые результаты? На всякий случай обращаю внимание, что речь идёт не столько об атрибутах файла в классическом понимании (A/R/H/S/F), сколько о переносе времени создания и модификации файла на другой файл.
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2584
Location: Большая деревня Москва

Post (Separately) Posted: Wed Sep 05, 2012 15:31    Post subject: Reply with quote

2oshizelly
1) Скопировать это в буфер:
Code:
TOTALCMD#BAR#DATA
c:\user\Batches\CopyAttr.bat
"%WL" %T%M
E:\Windows\System32\imageres.dll,-68
CopyAttr (Выделенным файлам присвоить атрибуты файла с %T)
c:\user\Batches\

-1
2) Навести курсор на свободное место на панели;
3) Правая кнопка мыши и "Paste";
4) Навести крысу на появившуюся кнопку и в меню по правой кнопке выбрать "Change...";
5) Отредактировать путь к батнику, оный к иконке, и описание;
6) Батник Tol!k'а сохранить по соответствующему пути.
7) Установить курсор на файл-образец на пассивной панели;
8) Выделить файл(ы) на активной панели;
9) Нажать кнопку.

Проверил - работает. Tol!k, как всегда, красавец.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Sep 05, 2012 17:04    Post subject: Reply with quote

Вахмурка wrote:
Проверил - работает.
Что работает? Это?:
oshizelly wrote:
заранее заданные атрибуты (скажем, дата создания и дата модификации файла) переносятся
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2584
Location: Большая деревня Москва

Post (Separately) Posted: Wed Sep 05, 2012 17:23    Post subject: Reply with quote

Нет, просто атрибуты. Дата/время не копируются. Да мне и ни к чему. Что же касается "заранее выбранных", то можно один раз наплодить файлов с разными наборами атрибутов (скажем, создать файл rh.ext с атрибутами readonly и hidden), сделать для него кнопочку с вызовом батника и жать при необходимости. То есть будет некое число файлов (недосуг сейчас считать по формулам комбинаторики) и соответствующее число кнопок на панели.
Утилита от Volniy работает только с одним файлом.
И вообще, я тупо излагал содержимое документации тому, кому лень нажать F1.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page 1, 2, 3 ... 9, 10, 11  Next
Page 1 of 11

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group