как в TC отсортировать фотографии по номеру

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

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

Ответить
Тёма
Сообщения: 1
Зарегистрирован: Пт мар 23, 2012 17:11

как в TC отсортировать фотографии по номеру

Сообщение Тёма »

в каталоге есть файлы:
0001.jpg
0002.jpg
...
1195.jpg
При этом некоторых файлов не хватает. Например нет файла 0019.jpg.
Задача: создать 60 папок, в первую папку скопировать все файлы с именами в диапазоне 0001-0020, во вторую 0021-0040 и так далее. Как это сделать?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

TC не умеет создавать несколько папок и сразу копировать в них файлы. Формат файлов для таких операций никакого значения не имеет.
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

Тёма
Я спокойно руками за 10 минут раскидал несколько сот тысяч фоток с подобными именами по счётчику в папки по сто штук БЕЗ ПРОБЛЕМ вручную!
Задача про 60 папок после этого выглядит смешно, ибо проделывается за минуту-полторы.
Аватара пользователя
Tol!k
Сообщения: 1727
Зарегистрирован: Вт апр 01, 2008 20:02
Откуда: Арзамас

Сообщение Tol!k »

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

@echo off &chcp 1251 >nul &setlocal enableextensions
:: http://forum.wincmd.ru/viewtopic.php?p=90765#90765
:: Пример параметров: 20 "%P" "%T"

set mask="^[0-9][0-9][0-9][0-9]\.jpg$"

set /a "step=%~1" ||(
	echo Use: %~nx0 20 "C:\src\" "D:\trgt\"
	pause >nul &goto :eof
)
if "%~3"=="" (set "D=") else set "D=%~3\"
set /a n=0
:loop
set /a n+=step
set "F=0000%n%"
set "F=%F:~-4%"
for /f "delims=" %%f in (
'dir /b/a-d/on %2 ^|findstr /rc:%mask%'
) do (
	title %%~nf
	if "%%~nf" LEQ "%F%" (
		if not exist "%D%%F%\" md "%D%%F%\"
		move /y "%%f" "%D%%F%\"
	) else goto :loop
)
сохранить как .cmd
первый параметр обязателен
Последний раз редактировалось Tol!k Вс мар 25, 2012 19:31, всего редактировалось 1 раз.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Тема переносится в "Автоматизацию".
Даже самая богатая фантазия
Не представит себе наши безобразия.
Ответить