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 

Надо найти 40 файлов и удалить!
Goto page Previous  1, 2, 3, 4, 5, 6 ... 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
den114



Joined: 03 Nov 2007
Posts: 25

Post (Separately) Posted: Thu Sep 30, 2010 17:22    Post subject: Reply with quote

Просто было б время у меня во всем этом разбиратся то я бы просто попросил совета и в конце концов проблему бы решил.
Но вот из-за того что его категорически не хватает предлагаю деньги, конечно может кому-то и мало, а кто-то может что-то подобное делал для себя и согласился поделится ради лишней копейки.
Спросить то ведь стоит, а вдруг повезет, в программировании и скриптовый языках я слабоват, работаю в другом направлении
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Thu Sep 30, 2010 17:40    Post subject: Reply with quote

Очень много слов и ни одного ответа на вопрос. Тогда по пунктам:
1) Чем тебя не устраивает решение Tol!k?
2) Чем тебя не устраивает вот это мое решение?
3) Аналогично, вот это?
4) Чем тебя не устраивает решение через временную панель?
5) И наконец, допускаешь ли ты, что назначь ты даже $1000, за эту задачу никто не возьмется просто в силу ее крайней трудоемкости? Если да, то каковы твои действия?
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
den114



Joined: 03 Nov 2007
Posts: 25

Post (Separately) Posted: Thu Sep 30, 2010 18:03    Post subject: Reply with quote

Всем откликнувшимся спасибо уже сделали.

Вахмурка wrote:
Очень много слов и ни одного ответа на вопрос. Тогда по пунктам:
1) Чем тебя не устраивает решение Tol!k?
2) Чем тебя не устраивает вот это мое решение?
3) Аналогично, вот это?
4) Чем тебя не устраивает решение через временную панель?
5) И наконец, допускаешь ли ты, что назначь ты даже $1000, за эту задачу никто не возьмется просто в силу ее крайней трудоемкости? Если да, то каковы твои действия?


Пункты 1-4 слишком трудоемки точнее слишком много лишних телодвижений, во всяком случае для меня.
По пункту 5, на веблансер.нет мне сделали плагин за 20$ буквально за пол дня, в корне с плагином находится список файлов которые нужно найти, в самом же поиске в последней вкладке ставишь искать при помощи плагина, ищет с использованием масок и передает в панель тотала. Как раз то что мне было нужно
Так что о том что никто не возьмется и про 1000 $ вы явно погорячились.
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Thu Sep 30, 2010 18:38    Post subject: Reply with quote

Quote:
Насколько я знаю, все скриптовые (интерпретируемые) языки имеют примерно одинаковый функционал,

Ага, батники примерно равны vbs, те в свою очередь равны PowerPro, который в свою очередь равен AutoIt, который в свою очередь ... и т.д. и т.л. Very Happy Very Happy Very Happy
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Thu Sep 30, 2010 18:51    Post subject: Reply with quote

Flasher wrote:
я о прогах. И та и другая прога могут делать жёсткие ссылки, о которых я писал.
О прогах: первая прога не может делать символические ссылки, которые понравились мне Wink

Code:
TOTALCMD#BAR#DATA
%ComSpec% /c call "%commander_path%\cmd\createlink.cmd"
masks.txt "%P" "%T"
%commander_path%\wcmicons.dll,50
Создать в целевой папке ссылки для файлов подходящих под маски

1
-1


createlink.cmd
Code:
@echo off &chcp 1251 >nul
setlocal enableextensions

rem Параметры: маски.txt D:\где_искать\ D:\куда_складывать\
rem Пример параметров для TC: D:\маски_поиска.txt "%P" "%T"

for /f "delims=" %%f in (
'for /f "usebackq delims=" %%a in ^("%~1"^) do @dir /a-d/b/s "%~2\%%a"'
) do mklink /h "%~3\%%~nxf" "%%f"


Last edited by Tol!k on Sat Oct 02, 2010 06:37; edited 1 time in total
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Thu Sep 30, 2010 19:57    Post subject: Reply with quote

Quote:
Ага, батники примерно равны vbs, те в свою очередь равны PowerPro, который в свою очередь равен AutoIt, который в свою очередь ... и т.д. и т.л.
Автор, видимо, шутит. Ну что же, мы тоже посмеемся над его шуткой, если он сможет доказать обратное.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Thu Sep 30, 2010 20:44    Post subject: Reply with quote

А что, в батниках/vbs уже можно работать с чужими окнами (посылать сообщения, щёлкать мышкой и нажимать клавиши - "эмуляция нажатий комбинаций клавиш клавиатуры, перемещения указателя мыши, управление окнами и их визуальными элементами."), создавать свой ГУЙ (с поддержкой всяких листбоксов, чекбоксов табов и т.д.), вызывать АПИ-функции (и не только АПИ - можно работать с любой библиотекой, в частности я именно так работаю с WDX-плагами, без сторонних костылей, только базовый функционал АвтоИта), регэкспы там всякие, работа с буфером обмена, реестром, возможность работы с другими процессами (вплоть до ковыряния в их памяти), некоторые на АвтоИте написали свой полуавтоматический переключатель раскладки (такая себе упрощённая версия "Пунто Свитчера"), калькулятор, секундомер, пятнашки и т.д. (можно посмотреть на ру-борде), работа с треем, возможность вызова стандартных диалогов открытия, сохранения, выбора папки и т.д., поддержка COM (в качестве примера приводится:
$oShell = ObjCreate("shell.application")
$oShell.MinimizeAll
и так далее...
Неужто батники (vbs, PowerPro) уже умеют это делать так сказать базовым функционалом (без привлечения сторонних утилит)?
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Thu Sep 30, 2010 20:53    Post subject: Reply with quote

Tol!k wrote:
Flasher wrote:
я о прогах. И та и другая прога могут делать жёсткие ссылки, о которых я писал.
О прогах: первая прога не может делать символические ссылки, которые понравились мне Wink
У символических одна особенность - для создания необходимы права администратора, и в XP и предыдущих системах их не было.
С другой стороны, они поддерживают относительный путь, несуществующий в данный момент путь, путь где угодно, а не только на NTFS-разделе (например, на компакт-диске или в сети), и система для них показывает дополнительную вкладку свойств с путем к целевому объекту. Правда, иногда коряво (когда путь в ссылке начинается с обратной косой черты - т.е. относительно корневого каталога диска).
Также особенностью символических ссылок является запоздалое обновление свойств объекта - например, если целевой файл обновился, объект-ссылка все еще будет показывать прежнюю дату (и, насколько я помню, тотал не умеет обновлять эти свойства - в Проводнике обновление окна обновляет свойства, в тотале - нет). Да, еще неприятная особенность - размер символической ссылки равен нулю, в отличие от жесткой - например, через Nero на диск пишется пустой файл. С папками не проверял.

Samwatas wrote:
А что, в батниках/vbs уже можно работать с чужими окнами (посылать сообщения, щёлкать мышкой и нажимать клавиши - "эмуляция нажатий комбинаций клавиш клавиатуры, перемещения указателя мыши, управление окнами и их визуальными элементами."), создавать свой ГУЙ (с поддержкой всяких листбоксов, чекбоксов табов и т.д.), вызывать АПИ-функции (и не только АПИ - можно работать с любой библиотекой, ...
Аж интересно стало взглянуть на командный интерпретатор обычных BAT и CMD файлов, позволяющий без внешних утилит работать с окнами, вызывать API-функции и создавать COM-объекты... Командные файлы я бы даже скриптовыми не называл, чересчур простой синтаксис - так, последовательность команд (циклы уже с трудом, не говоря о переменных). А что касается вызова API или работы с COM из бат-файла - это вообще из области фантастики. Вот в VBS-скрипте уже можно использовать COM и писать более-менее серьезные скрипты, ну а AutoIT в отличие от BAT, VBS и PPro позволяет генерить некое подобие байт-кода и дописывать к исполнителю, создавая независимую утилиту (хотя я лично предпочитаю нормальный компилятор - пишу почти то же самое, но на более понятном языке, меньше весит и работает в разы быстрее, так как сразу формируется машинный код). Предыдущим конкурсантам такое пока не снилось.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Thu Sep 30, 2010 21:20    Post subject: Reply with quote

2Samwatas
Смею напомнить, что один из мощнейших компилируемых языков С++ без подключения библиотек оказывается почти беспомощным, по ряду показателей функциональности сравниваясь с каким-нибудь Бейсиком 20-летней давности. Так что "без сторонних костылей" его вообще затруднительно использовать, разве что для обучения начинающих.
Quote:
Неужто батники (vbs, PowerPro) уже умеют это делать так сказать базовым функционалом (без привлечения сторонних утилит)?
Язык батников, видимо, один из старейших, появившийся одновременно с ДОСом (80-е гг.). От него и не требуется умение работать с окнами, для этого существуют куда более совершенные инструменты. Вряд ли кто-то будет долбить отверстие шлямбуром, если под рукой есть электродрель. Но наличие электродрели вовсе не ведет к тому, что шлямбур надо выбрасывать - а вдруг электричество отключат? Wink
Язык PowerPro, кстати, без своих многочисленных плагинов тоже довольно убог по своим возможностям. Так что если запретить всем языкам использовать "костыли", то их вообще можно будет примерно уравнять по своим возможностям.
Разумеется, в каждой избушке - свои погремушки. Perl ориентирован в основном на работу с текстом, php - с сетью, PowerPro - с панелями и меню, и т.д. Соответственно, и специфических функций для этих задач у них при прочих равных условиях больше, чем у других языков. Но если устроить их сравнение "в среднем", по принципу универсальности, то показатели будут примерно равны. Причем такие оценки наверняка выполнялись, и не раз.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Thu Sep 30, 2010 22:05    Post subject: Reply with quote

Quote:
Но если устроить их сравнение "в среднем",

Это как средняя температура по больнице - кто-то в горячке, а кто-то лежит уже холодный, но в среднем всё нормально. Very Happy
Про сторонние утилиты - я имел в виду совершенно не относящиеся к скриптовому языку (например, как здесь - http://forum.wincmd.ru/viewtopic.php?p=68026#68026), что касается библиотек и плагинов, то это часть языка, предназначенная для работы с ним. Что касается cmd - то да, это простейший язык автоматизации, встроенный в систему, который здорово помогает в простеньких случаях (а большего от него добиться сложно). Микрософт уже кстати выпустила его более мощную замену - называется PowerShell. Интересно, Tol!k уже начал изучать эту более продвинутую версию батников?
Каждый язык имеет свои плюсы и минусы, каждый создавался для решения каких-то конкретных задач, но говорить что все они примерно одинаковы всё таки несколько опрометчиво.
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Thu Sep 30, 2010 22:24    Post subject: Reply with quote

Сравнение со средней температурой напрашивалось Wink
Обратимся к конкретной задаче, поставленной den114 - найти файлы из списка и вывести их на панель. Она, безусловно, решаема и на PowerPro, и на vbs, и на AutoIt, и на AutoHotKey, и еще на десятке языков (при компилируемые я уж молчу). Допустим, эти скрипты написаны. Можно ли их сравнить по какому-то принципу? Сомневаюсь. По быстродействию? Ну будут они отличаться на 2-3 мс, кому это важно? По краткости кода? При нынешних терабайтных винтах лишние 10 кб - это капля в море. По изяществу, структурности, наглядности, читабельности? По большому счету, все это довольно субъективно. Вот и получается, что все решения примерно одинаковы, и спорить о том, что PowerPro лучше, чем vbs, но хуже, чем AutoIt - только тратить время. Каждый пишет на том, чем владеет и что нравится.
Так что я продолжаю утверждать, что (по крайней мере для данной задачи и подобных ей) все языки примерно равноценны.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Thu Sep 30, 2010 22:50    Post subject: Reply with quote

Ну так сравнивать их нужно не на одной конкретной задаче, а на количестве задач, решаемых тем или иным языком. Например, требуется переместить все файлы *.мп3 в какую-то папку. С этой эадачей справятся без проблем все скрипты (включая батники). А теперь усложним задачу: перемещать только те файлы, в имени которых присутствует год (причём между двумя определёнными значениями - например от 2005 до 2010) - это могут быть имена вида "2008 - что-то.мп3" или "Просто_файл_2009.мп3" и т.д. Сразу же отсеялись языки, не умеющие работать с регэкспами (в том числе и батники). Можно усложнять задачу дальше, с дальнейшим отсеиванием языков (что-то где-то патчить, читать из буфера обмена и писать туда и т.д.). Наконец, можно прийти к какой-то черте, после которой скриптовые языки уже не работают, и приходится использовать более мощные языки (типа С++), например при написании драйвера и т.д.
Так что на простой задаче действительно все языки равны, но стоит усложнить задачу, как начнётся проявляться неравенство, и ничего с этим не поделать.

По поводу поверпро: Я писал свою утиль wdx.exe для работы с плагинами базовым функционалом АвтоИта и она выполняла загрузку библиотеки в своё адресное пространство с вызовом экспортируемой функции "ContentGetValue" и передаче результата в консоль (так что Tol!k мог вызывать её из батника). Может ли поверпро сделать такое?
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Thu Sep 30, 2010 22:57    Post subject: Reply with quote

Quote:
Так что на простой задаче действительно все языки равны, но стоит усложнить задачу, как начнётся проявляться неравенство, и ничего с этим не поделать

Рад, что мы наконец-то пришли к товарищу Консенсусу. На этом дискссию предлагаю закончить, а то прибегут модеры и пропишут за оффтоп по желтой карточке каждому.
А вопрос очень мудреный, я не понял. Так что на всякий случай скажу, что поверпро такое не может (хотя в нем есть наикрутейшие плагины com и dll, выходящие за грань моей компетенции).
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Thu Sep 30, 2010 23:11    Post subject: Reply with quote

Quote:
А вопрос очень мудреный, я не понял.

Речь об этой моей теме. То есть я написал консольную утилитку (со скромными пока возможностями), которая выступает мостиком между батником и wdx-плагином. Написал я её за 2-3 вечера, при достаточно слабых познаниях АвтоИта (хотя я и почитывал соответствующие форумы, штудировал справку в момент написания). Хотя она пока работает только с типом "string".
П.С. Кстати, сейчас специально посмотрел этот скрипт - файлик занимает 1,68 Кб, состоит из 45 строк (из них почти десяток - чистые комментарии) и написан очень неоптимально (учитывая мой опыт на тот момент). Сейчас бы я уложился в 20-25 строк и весил бы он меньше килобайта (при той же функциональности).
Back to top
View user's profile Send private message
Serge Yolkin



Joined: 25 Jul 2009
Posts: 664

Post (Separately) Posted: Fri Oct 01, 2010 00:06    Post subject: Reply with quote

Samwatas
Quote:
Сразу же отсеялись языки, не умеющие работать с регэкспами (в том числе и батники).
На какую сумму я могу расчитывать за такой батник?
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 Previous  1, 2, 3, 4, 5, 6 ... 9, 10, 11  Next
Page 5 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