Создание каталогов и сортировка файлов по ним

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

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

MaxaSamAtman
Сообщения: 3
Зарегистрирован: Пн дек 13, 2010 17:45

Создание каталогов и сортировка файлов по ним

Сообщение MaxaSamAtman »

Здравствуйте.
Имеется папка с более чем 1000 файлов.
пример
Изображение
Надо их рассортировать вот-так
пример
Изображение

есть какие либо соображения по данному поводу?
Аватара пользователя
Вахмурка
Сообщения: 2587
Зарегистрирован: Пн дек 27, 2004 14:47
Откуда: Большая деревня Москва
Контактная информация:

Сообщение Вахмурка »

Сейчас придут Batya и Tol!k и будут соревноваться - кто быстрее напишет скрипт vbs или батник соответственно. А пока они не пришли:
- число символов до и после дефиса одинаково?
- скрипт PowerPro устроит? Если да, то чур я буду третий соревноваться. ;)
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

Вахмурка писал(а):Сейчас придут Batya и Tol!k и будут соревноваться - кто быстрее напишет скрипт vbs или батник соответственно.
Не будут!

MaxaSamAtman
В TC нельзя делать смешанную сортировку файлов и папок - сначала всегда папки, а уже потом файлы.
Ну а сортировка файлов, как я вижу, у тебя одинаковая на обоих скриншотах.
Нет, я не сплю. Я просто медленно моргаю.
Аватара пользователя
Вахмурка
Сообщения: 2587
Зарегистрирован: Пн дек 27, 2004 14:47
Откуда: Большая деревня Москва
Контактная информация:

Сообщение Вахмурка »

Я так понял, что красная стрелочка означает "копировать/переместить в...".

MaxaSamAtman, поясни.
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Если переместить выделенные файлы в подпапки, названные по первым 6 символам имени, то простейший бат-файл:

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

@echo off
if -%1==-go goto go
if -%1==- echo Params: %%WF&pause&goto :EOF
for /f "usebackq delims=" %%f in (`type %1`) do call %0 go %%f
pause
goto :EOF

:go
set $filename=%~2
set $foldername=%$filename:~0,6%
if not exist %$foldername% md %$foldername%
move %$filename% %$foldername%
А если просто показать на панели в таком порядке, то, как уже было сказано, невозможно.
MaxaSamAtman
Сообщения: 3
Зарегистрирован: Пн дек 13, 2010 17:45

Сообщение MaxaSamAtman »

Вахмурка писал(а):Я так понял, что красная стрелочка означает "копировать/переместить в...".

MaxaSamAtman, поясни.
Да, копировать или переместить.
Рассматриваются оба варианта.
смешанная сортировка ... это фотошеп ... , для наглядности имен файлов-папок.

да, папок пока тож нет, вот их еще как-бы создать.

В указаном выше Бат`нике менять что либо надо?
если нет ... , то что-то не работает
Изображение
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MaxaSamAtman писал(а):что-то не работает
MVV просто не обратил внимание на название топика и забыл включить в батник создание самих папок. Чуток надо подождать, исправит. :wink:
Этот же будет работать, если подобные папки уже находятся в одном каталоге с файлами.
hit69
Сообщения: 2
Зарегистрирован: Пн дек 13, 2010 21:04

Сообщение hit69 »

Flasher писал(а):
MaxaSamAtman писал(а):что-то не работает
MVV просто не обратил внимание на название топика и забыл включить в батник создание самих папок. Чуток надо подождать, исправит. :wink:
Этот же будет работать, если подобные папки уже находятся в одном каталоге с файлами.
однако все равно не работает)))
и так и сяк...
я так понял, скрипт должен по первым 6 символам в названии файлов создать папки с такими названиями, далее файлы с одинаковыми первыми 6ю символами перемещаются в папку созданную "под них".

к примеру 1000 файлов, уникальных по 6 первым - 600,
создается 600 папок - > перемещение файлов по-папкам.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Flasher писал(а):
MaxaSamAtman писал(а):что-то не работает
MVV просто не обратил внимание на название топика и забыл включить в батник создание самих папок. Чуток надо подождать, исправит. :wink:
Этот же будет работать, если подобные папки уже находятся в одном каталоге с файлами.
А ты хоть пробовал батник? Эта его строчка тебе о чем-нибудь говорит?

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

if not exist %$foldername% md %$foldername%
:D
MaxaSamAtman писал(а):В указаном выше Бат`нике менять что либо надо?
если нет ... , то что-то не работает
Изображение
Дык кому написано, что нужно указать параметр %WF? :wink: Зайди в свойства кнопки и пропиши там в строке параметров. Да, еще важное замечание - поле рабочей папки в свойствах кнопки необходимо очистить.
Последний раз редактировалось MVV Пн дек 13, 2010 21:43, всего редактировалось 1 раз.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):А ты хоть пробовал батник?
Не стал, просто оценил код мельком. :)
MVV писал(а):Эта его строчка тебе о чем-нибудь говорит?
:shock: Ослеп. Пардон муа..
hit69
Сообщения: 2
Зарегистрирован: Пн дек 13, 2010 21:04

Сообщение hit69 »

все работает...;) ребят, а фильтр сюда можно прикрутить?
к примеру исходные файлы *.raw остаются, а перемещаются только к примеру *.jpg или *.psd


можно или нельзя прикрутить фильтр - это второе - первое - Спасибо! ;)
MaxaSamAtman
Сообщения: 3
Зарегистрирован: Пн дек 13, 2010 17:45

Сообщение MaxaSamAtman »

всем пасиб, все супер
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

hit69 писал(а):все работает...;) ребят, а фильтр сюда можно прикрутить?
к примеру исходные файлы *.raw остаются, а перемещаются только к примеру *.jpg или *.psd
Сразу после строчки с :go вставь следующие 2 строки, чтобы указать расширения, которые не будут обрабатываться:

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

echo .raw .tmp | find /i "%~x2" > nul
if not errorlevel 1 goto :EOF
Здесь после echo перечисляешь через пробелы сами расширения, маски не поддерживаются (я для примера написал два расширения, можно любое число). Файлы с расширениями, не перечисленными в первой строчке, будут перемещаться в соответствующие подпапки.
Аватара пользователя
Batya
Сообщения: 2236
Зарегистрирован: Ср дек 15, 2004 09:51
Откуда: Москва, Россия

Сообщение Batya »

Ну, раз речь идёт не о сортировке, а о перемещении, то можно воспользоваться либо этим скриптом, либо этим (с параметрами %L "%P" 22 "-" ).
Нет, я не сплю. Я просто медленно моргаю.
Аватара пользователя
shveicar
Сообщения: 277
Зарегистрирован: Пн апр 18, 2011 01:54
Откуда: Россия Москва

Сообщение shveicar »

Здравствуйте
Что нужно добавить в батник, чтобы файлы перемещались на противоположную панель, в существующие папки. (с ориентиром по количеству символов все понятно). И еще один момент: после запуска батника появляется надпись нажмите любую клавишу.. Как сделать чтобы через 5 секунд сценарий автоматически выполнялся (если конечно окно не закрыть). Спасибо.
Опс - Извиняюсь, почти нашел ответ
здесь
Ответить