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 Previous  1, 2, 3  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Mon May 07, 2012 00:08    Post subject: Reply with quote

Tol!k
Вам также, Большое Спасибо, никаких проблем, нет - можно сделать несколько батников с разными числовыми значениями, повесить их на кнопки и вуаля..
Разница, только, как Я уже упомянул, в скорости обработки, но главное, - всё работает.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon May 07, 2012 00:31    Post subject: Reply with quote

Tol!k wrote:
а в чём профит изменения параметров?
А ты прочти 2, 3 пункты. Выбор одного-двух окон с заданием чисел, ничего в кнопке менять при необходимости не придётся. Вариантов можно задать несколько.
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Mon May 07, 2012 00:49    Post subject: Reply with quote

Quote:
можно сделать несколько батников с разными числовыми значениями,
Quote:
Выбор одного-двух окон с заданием чисел,
но ЗАЧЕМ?
Всё равно же ищется _единственное_ совпадение начало*.ext -- начало*\
так почему не задать максимально широкий диапазон поиска и больше не париться?
т.е. если найдено 2 (и более) совпадений – берётся диапазон на 1 символ шире;
если ни одного — файлы просто не перемещаются
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon May 07, 2012 01:07    Post subject: Reply with quote

Tol!k wrote:
но ЗАЧЕМ?
Зачем - я написал:
Flasher wrote:
ничего в кнопке менять при необходимости не придётся
что ускоряет подход в решении вновь возникшей задачи.
Tol!k wrote:
так почему не задать максимально широкий диапазон поиска и больше не париться?
Потому что это ограничит скорость обработки. В большинстве случаев более 10 символов не потребуется. Не 255 ставить же.
И начальное кол-во уж точно в разных случаях устанавливать новое придётся.
Окна всегда нужны для универсальности. Параметры - для более частых случаев.
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Mon May 07, 2012 01:17    Post subject: Reply with quote

> Потому что это ограничит скорость обработки.
На полсекунды? Very Happy

> Не 255 ставить же.
(255 - расширение - x:\ - 1) / 2

> В большинстве случаев более 10 символов не потребуется.
Найдено единственное совпадение – выход из цикла, и все дела.

> И начальное кол-во уж точно в разных случаях устанавливать новое придётся.
Ну а смысл? Хоть с 1 начинай, всё равно результатом должно быть единственное совпадение


Last edited by Tol!k on Mon May 07, 2012 01:20; edited 1 time in total
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Mon May 07, 2012 01:17    Post subject: Reply with quote

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



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

Post (Separately) Posted: Mon May 07, 2012 01:28    Post subject: Reply with quote

Tol!k wrote:
На полсекунды?
Смотря сколько папок в получателе, файлов в каждой папке, какой камень, диск, число работающих сервисов, программ и т.д. Может быть легко и более 10 сек. Условия бывают разные.
Tol!k wrote:
(255 - расширение - x:\ - 1) / 2
Зачем делить на 2?
Tol!k wrote:
Найдено единственное совпадение – выход из цикла, и все дела.
Там один выход из цикла. У меня же три цикла. Выйти из промежуточного не получится.
Tol!k wrote:
Ну а смысл? Хоть с 1 начинай, всё равно результатом должно быть единственное совпадение
Опять же возвращаемся к скорости обработки. Лишний проход не нужен.

Last edited by Flasher on Mon May 07, 2012 01:51; edited 1 time in total
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Mon May 07, 2012 01:35    Post subject: Reply with quote

Quote:
Зачем делить на 2?

результатом перемещения по максимуму будет
x:\ совпадение \ совпадение .расширение
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon May 07, 2012 01:51    Post subject: Reply with quote

Tol!k
Можно поконкретней? Пока не понял.
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Mon May 07, 2012 02:10    Post subject: Reply with quote

если результирующее полное имя будет длиннее
x:\ *здесь 123 символа* \ *здесь 123 символа* .ext
можно поиметь проблемы
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon May 07, 2012 02:14    Post subject: Reply with quote

Tol!k
Берём папку "1" в корне диска. Получается 255 - x:\1\ - расширение
Зачем тут на 2 делить?
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Mon May 07, 2012 02:18    Post subject: Reply with quote

так перемещаем же в _одноимённую_ с файлом папку.
не замечаешь \ в середине пути?

x:\ это совпадение длиной в 123 символа \ это совпадение длиной в 123 символа .ext
так понятнее?

а с папкой "1" может совпасть только 1.ext
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon May 07, 2012 02:25    Post subject: Reply with quote

Tol!k wrote:
так понятнее?
Нет. Мы же не в одноимённую папку перемещаем. Длина имени и у файла и у папки может очень сильно разнится. Пример: 12аруеокнелнглнглнг4y35nesfsbq45yh4b\ - 12.txt, и наоборот.
Back to top
View user's profile Send private message
Tol!k



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

Post (Separately) Posted: Mon May 07, 2012 02:31    Post subject: Reply with quote

ОК, не в одноимённую.

В максимально длинную папку перемещаем максимально длинный файл, но чтобы без проблем в результате
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon May 07, 2012 02:43    Post subject: Reply with quote

В имени папки - 150 символов, в одном файле - 5, в другом - 80. Проверяем по первым 3-м символам.
Деление на 2 тут неуместно. Выставлять каждый раз самое длинное имя папки/файла для каждого совпадения - лишние трудозатраты. Поэтому лучше задавать ограничение. Предлагаю на этом закончить обмен своими взглядами. Wink
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  Next
Page 2 of 3

 
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