Перемещение файлов в папки по первым буквам их имён
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3  Next  :| |:
Total Commander -> Автоматизация Total Commander

#16:  Author: shveicarLocation: Россия Москва PostPosted: Mon May 07, 2012 00:08
    —
Tol!k
Вам также, Большое Спасибо, никаких проблем, нет - можно сделать несколько батников с разными числовыми значениями, повесить их на кнопки и вуаля..
Разница, только, как Я уже упомянул, в скорости обработки, но главное, - всё работает.

#17:  Author: FlasherLocation: Москва PostPosted: Mon May 07, 2012 00:31
    —
Tol!k wrote:
а в чём профит изменения параметров?
А ты прочти 2, 3 пункты. Выбор одного-двух окон с заданием чисел, ничего в кнопке менять при необходимости не придётся. Вариантов можно задать несколько.

#18:  Author: Tol!kLocation: Арзамас PostPosted: Mon May 07, 2012 00:49
    —
Quote:
можно сделать несколько батников с разными числовыми значениями,
Quote:
Выбор одного-двух окон с заданием чисел,
но ЗАЧЕМ?
Всё равно же ищется _единственное_ совпадение начало*.ext -- начало*\
так почему не задать максимально широкий диапазон поиска и больше не париться?
т.е. если найдено 2 (и более) совпадений – берётся диапазон на 1 символ шире;
если ни одного — файлы просто не перемещаются

#19:  Author: FlasherLocation: Москва PostPosted: Mon May 07, 2012 01:07
    —
Tol!k wrote:
но ЗАЧЕМ?
Зачем - я написал:
Flasher wrote:
ничего в кнопке менять при необходимости не придётся
что ускоряет подход в решении вновь возникшей задачи.
Tol!k wrote:
так почему не задать максимально широкий диапазон поиска и больше не париться?
Потому что это ограничит скорость обработки. В большинстве случаев более 10 символов не потребуется. Не 255 ставить же.
И начальное кол-во уж точно в разных случаях устанавливать новое придётся.
Окна всегда нужны для универсальности. Параметры - для более частых случаев.

#20:  Author: Tol!kLocation: Арзамас PostPosted: Mon May 07, 2012 01:17
    —
> Потому что это ограничит скорость обработки.
На полсекунды? 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

#21:  Author: shveicarLocation: Россия Москва PostPosted: Mon May 07, 2012 01:17
    —
Господа.
Позвольте и мне добавить: Когда под рукой нет никаких инструментов - кроме отвертки, придется и ей - гвозди забивать. Но если есть выбор, каждый Сам решает, какой у него будет любимый инструмент.

#22:  Author: FlasherLocation: Москва PostPosted: Mon May 07, 2012 01:28
    —
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

#23:  Author: Tol!kLocation: Арзамас PostPosted: Mon May 07, 2012 01:35
    —
Quote:
Зачем делить на 2?

результатом перемещения по максимуму будет
x:\ совпадение \ совпадение .расширение

#24:  Author: FlasherLocation: Москва PostPosted: Mon May 07, 2012 01:51
    —
Tol!k
Можно поконкретней? Пока не понял.

#25:  Author: Tol!kLocation: Арзамас PostPosted: Mon May 07, 2012 02:10
    —
если результирующее полное имя будет длиннее
x:\ *здесь 123 символа* \ *здесь 123 символа* .ext
можно поиметь проблемы

#26:  Author: FlasherLocation: Москва PostPosted: Mon May 07, 2012 02:14
    —
Tol!k
Берём папку "1" в корне диска. Получается 255 - x:\1\ - расширение
Зачем тут на 2 делить?

#27:  Author: Tol!kLocation: Арзамас PostPosted: Mon May 07, 2012 02:18
    —
так перемещаем же в _одноимённую_ с файлом папку.
не замечаешь \ в середине пути?

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

а с папкой "1" может совпасть только 1.ext

#28:  Author: FlasherLocation: Москва PostPosted: Mon May 07, 2012 02:25
    —
Tol!k wrote:
так понятнее?
Нет. Мы же не в одноимённую папку перемещаем. Длина имени и у файла и у папки может очень сильно разнится. Пример: 12аруеокнелнглнглнг4y35nesfsbq45yh4b\ - 12.txt, и наоборот.

#29:  Author: Tol!kLocation: Арзамас PostPosted: Mon May 07, 2012 02:31
    —
ОК, не в одноимённую.

В максимально длинную папку перемещаем максимально длинный файл, но чтобы без проблем в результате

#30:  Author: FlasherLocation: Москва PostPosted: Mon May 07, 2012 02:43
    —
В имени папки - 150 символов, в одном файле - 5, в другом - 80. Проверяем по первым 3-м символам.
Деление на 2 тут неуместно. Выставлять каждый раз самое длинное имя папки/файла для каждого совпадения - лишние трудозатраты. Поэтому лучше задавать ограничение. Предлагаю на этом закончить обмен своими взглядами. Wink



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3  Next  :| |:
Page 2 of 3

Powered by phpBB © 2001, 2005 phpBB Group