View previous topic :: View next topic |
Author |
Message |
MaxaSamAtman
Joined: 13 Dec 2010 Posts: 3
|
(Separately) Posted: Mon Dec 13, 2010 18:53 Post subject: Создание каталогов и сортировка файлов по ним |
|
|
Здравствуйте.
Имеется папка с более чем 1000 файлов.
пример
Надо их рассортировать вот-так
пример
есть какие либо соображения по данному поводу? |
|
Back to top |
|
|
Вахмурка
Joined: 27 Dec 2004 Posts: 2584 Location: Большая деревня Москва
|
(Separately) Posted: Mon Dec 13, 2010 19:08 Post subject: |
|
|
Сейчас придут Batya и Tol!k и будут соревноваться - кто быстрее напишет скрипт vbs или батник соответственно. А пока они не пришли:
- число символов до и после дефиса одинаково?
- скрипт PowerPro устроит? Если да, то чур я буду третий соревноваться. _________________ Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон) |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2220 Location: Москва, Россия
|
(Separately) Posted: Mon Dec 13, 2010 19:13 Post subject: |
|
|
Вахмурка wrote: | Сейчас придут Batya и Tol!k и будут соревноваться - кто быстрее напишет скрипт vbs или батник соответственно. |
Не будут!
MaxaSamAtman
В TC нельзя делать смешанную сортировку файлов и папок - сначала всегда папки, а уже потом файлы.
Ну а сортировка файлов, как я вижу, у тебя одинаковая на обоих скриншотах. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
Вахмурка
Joined: 27 Dec 2004 Posts: 2584 Location: Большая деревня Москва
|
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Mon Dec 13, 2010 19:29 Post subject: |
|
|
Если переместить выделенные файлы в подпапки, названные по первым 6 символам имени, то простейший бат-файл: Code: | @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% |
А если просто показать на панели в таком порядке, то, как уже было сказано, невозможно. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
MaxaSamAtman
Joined: 13 Dec 2010 Posts: 3
|
(Separately) Posted: Mon Dec 13, 2010 20:20 Post subject: |
|
|
Вахмурка wrote: | Я так понял, что красная стрелочка означает "копировать/переместить в...".
MaxaSamAtman, поясни. |
Да, копировать или переместить.
Рассматриваются оба варианта.
смешанная сортировка ... это фотошеп ... , для наглядности имен файлов-папок.
да, папок пока тож нет, вот их еще как-бы создать.
В указаном выше Бат`нике менять что либо надо?
если нет ... , то что-то не работает
|
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Dec 13, 2010 21:19 Post subject: |
|
|
MaxaSamAtman wrote: | что-то не работает | MVV просто не обратил внимание на название топика и забыл включить в батник создание самих папок. Чуток надо подождать, исправит.
Этот же будет работать, если подобные папки уже находятся в одном каталоге с файлами. |
|
Back to top |
|
|
hit69
Joined: 13 Dec 2010 Posts: 2
|
(Separately) Posted: Mon Dec 13, 2010 22:14 Post subject: |
|
|
Flasher wrote: | MaxaSamAtman wrote: | что-то не работает | MVV просто не обратил внимание на название топика и забыл включить в батник создание самих папок. Чуток надо подождать, исправит.
Этот же будет работать, если подобные папки уже находятся в одном каталоге с файлами. |
однако все равно не работает)))
и так и сяк...
я так понял, скрипт должен по первым 6 символам в названии файлов создать папки с такими названиями, далее файлы с одинаковыми первыми 6ю символами перемещаются в папку созданную "под них".
к примеру 1000 файлов, уникальных по 6 первым - 600,
создается 600 папок - > перемещение файлов по-папкам. |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Mon Dec 13, 2010 22:31 Post subject: |
|
|
Flasher wrote: | MaxaSamAtman wrote: | что-то не работает | MVV просто не обратил внимание на название топика и забыл включить в батник создание самих папок. Чуток надо подождать, исправит.
Этот же будет работать, если подобные папки уже находятся в одном каталоге с файлами. |
А ты хоть пробовал батник? Эта его строчка тебе о чем-нибудь говорит? Code: | if not exist %$foldername% md %$foldername% |
MaxaSamAtman wrote: | В указаном выше Бат`нике менять что либо надо?
если нет ... , то что-то не работает
|
Дык кому написано, что нужно указать параметр %WF? Зайди в свойства кнопки и пропиши там в строке параметров. Да, еще важное замечание - поле рабочей папки в свойствах кнопки необходимо очистить. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Last edited by MVV on Mon Dec 13, 2010 22:43; edited 1 time in total |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Dec 13, 2010 22:37 Post subject: |
|
|
MVV wrote: | А ты хоть пробовал батник? | Не стал, просто оценил код мельком. MVV wrote: | Эта его строчка тебе о чем-нибудь говорит? | Ослеп. Пардон муа.. |
|
Back to top |
|
|
hit69
Joined: 13 Dec 2010 Posts: 2
|
(Separately) Posted: Mon Dec 13, 2010 22:51 Post subject: |
|
|
все работает... ребят, а фильтр сюда можно прикрутить?
к примеру исходные файлы *.raw остаются, а перемещаются только к примеру *.jpg или *.psd
можно или нельзя прикрутить фильтр - это второе - первое - Спасибо! |
|
Back to top |
|
|
MaxaSamAtman
Joined: 13 Dec 2010 Posts: 3
|
(Separately) Posted: Mon Dec 13, 2010 23:04 Post subject: |
|
|
всем пасиб, все супер |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Mon Dec 13, 2010 23:35 Post subject: |
|
|
hit69 wrote: | все работает... ребят, а фильтр сюда можно прикрутить?
к примеру исходные файлы *.raw остаются, а перемещаются только к примеру *.jpg или *.psd |
Сразу после строчки с :go вставь следующие 2 строки, чтобы указать расширения, которые не будут обрабатываться: Code: | echo .raw .tmp | find /i "%~x2" > nul
if not errorlevel 1 goto :EOF | Здесь после echo перечисляешь через пробелы сами расширения, маски не поддерживаются (я для примера написал два расширения, можно любое число). Файлы с расширениями, не перечисленными в первой строчке, будут перемещаться в соответствующие подпапки. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2220 Location: Москва, Россия
|
(Separately) Posted: Tue Dec 14, 2010 00:32 Post subject: |
|
|
Ну, раз речь идёт не о сортировке, а о перемещении, то можно воспользоваться либо этим скриптом, либо этим (с параметрами %L "%P" 22 "-" ). _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
shveicar
Joined: 18 Apr 2011 Posts: 277 Location: Россия Москва
|
(Separately) Posted: Thu May 03, 2012 21:50 Post subject: |
|
|
Здравствуйте
Что нужно добавить в батник, чтобы файлы перемещались на противоположную панель, в существующие папки. (с ориентиром по количеству символов все понятно). И еще один момент: после запуска батника появляется надпись нажмите любую клавишу.. Как сделать чтобы через 5 секунд сценарий автоматически выполнялся (если конечно окно не закрыть). Спасибо.
Опс - Извиняюсь, почти нашел ответ
здесь |
|
Back to top |
|
|
|