Перемещение групп файлов согласно числовому диапазону

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Тема перенесена в "Автоматизацию" и переозаглавлена (вместо "Поиск групповых серийных файлов").
Даже самая богатая фантазия
Не представит себе наши безобразия.
Hjkma
Сообщения: 178
Зарегистрирован: Сб апр 18, 2015 01:26

Сообщение Hjkma »

Flasher
Только сейчас с работы добрался до вашего скрипта. Сделал файл vbs с вашим текстом, запустил поиск, нажал на атрибут "каталог", выделил нужный каталог, запускаю скрипт, и все, ничего не происходит, файлы не переместились.
Наверное что-то нужно было сделать или что-то пропустил или неправильно сделал, только что?
вот скрин, файлы остались на местах
Изображение
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Hjkma
Памятка прочитана? Судя по всему, нет. Скриншот тут точно ни к чему.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Hjkma
Сообщения: 178
Зарегистрирован: Сб апр 18, 2015 01:26

Сообщение Hjkma »

Flasher
Я сделал точно так как вы сделали. Взял ваш код и поместил в текстовый файл, изменил расширение на VBS. Затем запустил поиск, выбрал нужный каталог и нажал на скрипт и ничего не изменилось.
Код ошибки не появился, его просто нет. Total Commander 8.51a, Windows 7 86x. Версия Wscript - 5.8.7061.18283.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Hjkma
Что я сделал? Я про памятку пишу. Там указан ещё ряд важных деталей, включая нижнюю часть в отношении ошибок. Пока информации недостаточно.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Hjkma
Сообщения: 178
Зарегистрирован: Сб апр 18, 2015 01:26

Сообщение Hjkma »

Flasher
Отредактировал скрипт так

Код: Выделить всё

' Параметры: %WL D:\Файлы\эксперимент <удалять пустые папки: 1>
Сделал кнопку, параметры выглядят так:
Изображение

Появилось еще код ошибки "укажите два параметры", наверно на место <удалять пустые папки: 1> нужно написать что-то, только что?
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Hjkma
Все картинки должны использоваться в минимальном количестве и только по делу. Любая кнопка (если она вообще нужна полностью) описывается её кодом (поиск по форуму в помощь), а не скринами. (Точно так же — полным или частичным кодом через копипаст — описываются и окна ошибки.) Больше никогда так не делайте. Про то, что не нужен и первый скрин, уже было сказано выше.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Hjkma
Советую перечитать пункт 5) памятки очень внимательно.
И нигде в ней про скриншоты и даже коды кнопок не писалось. Говорилось только о строке параметров:
3) Приведите строку параметров кнопки или пользовательской команды. Неправильная запись является наиболее частой проблемой.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Hjkma
Сообщения: 178
Зарегистрирован: Сб апр 18, 2015 01:26

Сообщение Hjkma »

Flasher
Заключил кавычки в путях, сделал строку вот так:

Код: Выделить всё

%WL "D:\Файлы\эксперимент" %WL "%T" 1
Ошибка та же

Код: Выделить всё

Укажите 2 или 3 параметра
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Hjkma
Вот, уже прогресс. И это не ошибка, а указание для исправления. А теперь смотрим, как написано в шапке - "Примеры:", которые разделены перегородкой. Несложно догадаться, что указано больше параметров, и %WL дублировать никакого смысла не имеет. Значит, какой окончательный вариант? :)
Что такое "%T", если ещё не известно, можно прочесть в справке.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Hjkma
Сообщения: 178
Зарегистрирован: Сб апр 18, 2015 01:26

Сообщение Hjkma »

Flasher
Отредактировал команду так:

Код: Выделить всё

%WL "D:\Файлы\эксперимент"  |  "%T" 1
По прежнему та же ошибка. Может напишете как правильно написать?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Hjkma
Дублирование %WL - это лишь намёк на излишек параметров в целом.
Написано, что параметров может быть 2 или 3. Все параметры разделяются пробелами. Значит, в приведённой строке сколько их? 5. А должно быть? А какой первый, какой второй и при желании третий?

Код: Выделить всё

%WL "<путь к целевой папке>" <удалять пустые папки: 1>
1) %WL
2) "<путь к целевой папке>"
3) <удалять пустые папки: 1>
Соотв., возможные варианты:
1) %WL "D:\Файлы\эксперимент"
2) %WL "D:\Файлы\эксперимент" 1
Либо установливать в другой панели любой целовой путь ("D:\Файлы\эксперимент" в частности) и параметры становятся универсальнее:
3) %WL "%T"
4) %WL "%T" 1
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Hjkma
Сообщения: 178
Зарегистрирован: Сб апр 18, 2015 01:26

Сообщение Hjkma »

Flasher

Код: Выделить всё

%WL "D:\Файлы\эксперимент"
Вставил в команду и все, вроде в экспериментальной папке все переместилось, но остались файлы, которые как оказалось имеют нумерацию начинающие на 0 (сорри что забыл об этом упомянуть) и следующие за ними файлы в сериях (то есть 0_ipg, 1_ipg, 2_ipg). Можно ли в скрипте отредактировать код, так чтобы и перемещались файлы также начинающие на 0 и все остальные файлы в сериях?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Hjkma писал(а):то есть 0_ipg, 1_ipg, 2_ipg
Что это за файлы такие? А где точки перед jpg? А где оговоренное наименование (NAME_№.EXT или NAME-№.EXT)?
Hjkma писал(а):и все остальные файлы в сериях?
Для перемещения мы согласовали критерий. "Все остальные файлы" - это о чём вообще?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Hjkma
Сообщения: 178
Зарегистрирован: Сб апр 18, 2015 01:26

Сообщение Hjkma »

Flasher
Я отредактировал скрипт, поставив 0 вместо 1 в этом коде,

Код: Выделить всё

LN = Left(BN, InStrRev(BN, "_") - 0) : F = LN & ":" & Ext
все файлы переместились. Но я посмотрел на папки, к сожалению файлы переместились совсем не так как я ожидал. Изначательно в целевой папке было 1119 файлов, все они были серийными, чаще 0-10, 11-20 и 21-30 (серий по 31 и больше было мало). Всего создалось 5 папок: [11-20] файлов в группах, [21-30] файлов в группах, [171-180] файлов в группах, [201-210] файлов в группах, [701-710] файлов в группах. В первую папку 11-20 отправились всего 13 файлов, одна серия по 13 файлов. В папку 21-30 отправились 24 файлы, две серии по 12. В папку 171-180 отправились 171 файлов, все серии были по 10-20 и 20-30. В папку 201-210 пошли файлы в количестве 209, серии по 10-20, 20-30. В папку 701-710 ушло 702 файлов, тоже в сериях 10-20 и 20-30.
В общем, какой-то баг в скрипте. Вместо того чтобы серии по 1-10 отправились в папку для 1-10, а 11-20 в папку для них, 21-30 в третью папку, они на самом деле сделали так как я описал выше.
Ответить