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  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
Тагарищ_Ы



Joined: 06 May 2009
Posts: 8

Post (Separately) Posted: Wed May 06, 2009 20:58    Post subject: Выделение файлов по формуле Reply with quote

Доброго дня! Подскажите, пожалуйста, как в коммандере можно выделить файлы по заданной формуле, например "index % 2" - все чётные и т.д.
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 6193
Location: Москва

Post (Separately) Posted: Wed May 06, 2009 23:45    Post subject: Reply with quote

Тагарищ_Ы
Например, вот этим: http://powerpro.wincmd.ru/Scripts/MarkStep.htm
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Wed May 06, 2009 23:46    Post subject: Reply with quote

Тагарищ_Ы wrote:
например "index % 2" - все чётные и т.д.

Т.е. "чётность" основывается на имени? Можно пример?
Вообще, тебя интересует этот частный случай
или таких формул у тебя несколько? Smile
Если несколько, то, скорее всего, придётся писать отдельный скрипт под каждую формулу.
Back to top
View user's profile Send private message
Тагарищ_Ы



Joined: 06 May 2009
Posts: 8

Post (Separately) Posted: Thu May 07, 2009 01:10    Post subject: Reply with quote

CaptainFlint, благодарю. Для начала сойдёт и так.
DrShark, ну в идеале, хотелось бы, чтобы был разбор выражений. В моём примере чётность основывается на остатке от целочисленного деления переменной index(порядковый номер файла в списке) на число 2. Но было бы неплохо иметь возможность использования и таких записей: "int(filename[5,2]) % 3" или "int(extention) * 2^index"
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Thu May 07, 2009 19:23    Post subject: Reply with quote

Тагарищ_Ы wrote:
Но было бы неплохо иметь возможность использования и таких записей: "int(filename[5,2]) % 3" или "int(extention) * 2^index"

Для этих задач вполне подойдут регулярные выражения или Script Content plugin.
В таком случае можно пойти следующим путём: Поиск с испольрованием RegEx или плагина (Alt+F7). При необходимости, глубину поиска ограничить до "Только текущий". Далее - файлы на панель.
Back to top
View user's profile Send private message
Тагарищ_Ы



Joined: 06 May 2009
Posts: 8

Post (Separately) Posted: Thu May 07, 2009 20:28    Post subject: Reply with quote

А регекс разве поддерживает арифметические вычисления?
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Thu May 07, 2009 21:26    Post subject: Reply with quote

Тоталовский RegEx не поддерживает, хотя такие простые вещи как проверку на чётность организовать можно. По-этому я и упомянул о контентных плагинах. Можно написать vbs-скрипт для Script Content Plugin, который будет парсить имена файлов по этим формулам, и использовать его в колонках или в поиске...
Back to top
View user's profile Send private message
Тагарищ_Ы



Joined: 06 May 2009
Posts: 8

Post (Separately) Posted: Thu May 07, 2009 21:29    Post subject: Reply with quote

Спасибо за наводку.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2224
Location: Москва, Россия

Post (Separately) Posted: Thu May 07, 2009 22:53    Post subject: Reply with quote

Тагарищ_Ы
А в чем практическая польза такого выделения?
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Тагарищ_Ы



Joined: 06 May 2009
Posts: 8

Post (Separately) Posted: Fri May 08, 2009 07:45    Post subject: Reply with quote

Batya, ну если взять мой случай, то я резал видео на куски и вышло около 2000 сегментов. Нужно было оставить только каждый третий кусок. Также, как-то давно требовалось оставить файлы "2 через 3, 2 через 2", но не нашёл готового решения и пришлось программулину состряпать.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2224
Location: Москва, Россия

Post (Separately) Posted: Fri May 08, 2009 15:46    Post subject: Reply with quote

Тагарищ_Ы
Можно сделать колонку с номером куска и отсортироваться по этой колонке. Далее легко выделяешь, что угодно.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Тагарищ_Ы



Joined: 06 May 2009
Posts: 8

Post (Separately) Posted: Fri May 08, 2009 18:25    Post subject: Reply with quote

Batya, если брать мой второй случай, то файлы имели вид table_xxxx.xml, где xxxx - целое число от 0000 до 9999. Т.е. уже всё упорядоченно. Выделить нужно было так:
table_0000.xml
table_0001.xml
table_0002.xml
table_0003.xml
table_0004.xml
table_0005.xml
table_0006.xml
table_0007.xml
table_0008.xml
table_0009.xml
table_0010.xml
table_0011.xml
table_0012.xml
table_0013.xml
table_0014.xml
table_0015.xml
table_0016.xml
table_0017.xml

MarkStep в несколько проходов и инверсий вероятно может это сделать. Но для этого с ним долго поиграться нужно. А вот как это сделать с помощью дополнительной колонки я не очень представляю.
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Fri May 08, 2009 20:39    Post subject: Reply with quote

2CaptainFlint
Спасибо за рекламу.

2Тагарищ_Ы
Скрипт в его нынешней редакции в ТС 7.5х работать не будет, хотя бы потому, что класс окна сменился с TTOTAL_CMD на TTOTAL_CMD.UnicodeClass. Переход на Юникод, к сожалению, сделал неработоспособными часть моих скриптов, в частности, MarkStep. Как раз в эти дни я занят рихтовкой моих скриптов с учетом новшеств последней версии ТС. Так что, если другого пути, кроме MarkStep, найдено не будет, есть два выхода:
1) Временно не переходить на 7.5 (или временно же поставить 7.0);
2) Подождать недельку-другую, пока я закончу работу.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Тагарищ_Ы



Joined: 06 May 2009
Posts: 8

Post (Separately) Posted: Fri May 08, 2009 22:02    Post subject: Reply with quote

Вахмурка, спасибо за хорошие скрипты. Я пока на 7.04 сижу. Так что, трудностей нету))
Back to top
View user's profile Send private message
Вахмурка



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

Post (Separately) Posted: Sat May 09, 2009 09:47    Post subject: Reply with quote

Хорошо, раз так. Надеюсь, ты уже понял, что скрипт можно запускать несколько раз для одного списка. То есть если в маркировке есть хоть какая-то регулярность, скрипт ее точно может воспроизвести. Видимо, именно эту последовательность с цифрами шагов и флагом "поставить/снять выделение" и можно назвать "формулой".
_________________
Сайт 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 -> Общие вопросы All times are GMT + 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
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