Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Переименование указанного количества файлов следуя нумерации

Ответить
Настройки темы
Любой язык - [решено] Переименование указанного количества файлов следуя нумерации

Ветеран


Сообщения: 531
Благодарности: 4

Профиль | Отправить PM | Цитировать


Изменения
Автор: Alexander_88
Дата: 07-07-2019
Здравствуйте. Есть ли способ переименовать заданное количество файлов в указанной папке, продолжая нумерацию и названия файлов, присутствующих в папке?
К примеру в папке 30 файлов, 10 файлов вида 0001start.avi, 0002start.wmv, 0003start.avi - 0010start.mpg, остальные 20 имеют различные названия. Я задал количество 20 файлов. Можно ли сделать так, чтобы код переименовывал файлы имеющие различные названия, продолжая нумерацию и повторяя название имеющимся, т.е. в данном примере 20 файлов должны переименоваться на 0011start.*, 0012start.*, 0013start.* - 0030start.*. Известно, что нумерация всегда четырехзначная, слова после нумерации в одной папке всегда одинаковы (но они могут быть не только "start"), расширения могут быть различные (видео файлы) Нумерация может быть не с еденицы, к примеру с 0546stop.* 0547stop.*

Отправлено: 21:17, 23-08-2014

 

Ветеран


Contributor


Сообщения: 2708
Благодарности: 1684

Профиль | Отправить PM | Цитировать


Alexander_88,
вариант (на всякий случай) для NNNNstart
Код: Выделить весь код
@Echo Off
cls
>nul Chcp 1251
 
	Set "BoxIn=Z:\Soft_In"
	Set "Kword=start"
rem	Set "Reg=^%Kword%[0-9][0-9][0-9][0-9]\..*"
	Set "Reg=^[0-9][0-9][0-9][0-9]%Kword%\..*"
	Set /A M=4

	Set "Mask=*.*"
	Set /A Max=2

	Set /A NMax=0	
rem	FOR /F "usebackq delims=" %%a IN (`2^>nul Dir "%BoxIn%\%Kword%*.*" /B /O:N /A:-D ^|findstr /I /R /C:"%Reg%"`) DO (
	FOR /F "usebackq delims=" %%a IN (`2^>nul Dir "%BoxIn%\*%Kword%.*" /B /O:N /A:-D ^|findstr /I /R /C:"%Reg%"`) DO (
		Set "NMax=%%~na"
rem		Call Set "NMax=1%%NMax:~-%M%%%"
		Call Set "NMax=1%%NMax:~0,%M%%%"
	)

	Set /A Num=1000000
	Set /A Num=%Num%+%NMax% 
	Set /A MMax=%Max%+%Num%

	Set /A MMax=%Max%+%Num%
	FOR /F "usebackq delims=" %%a IN (`2^>nul Dir "%BoxIn%\%Mask%" /B /O:N /A:-D ^|findstr /I /R /V /C:"%Reg%"`) DO (
		Call :RenNNN "%BoxIn%" "%%a" "%Kword%" %M% %MMax% ||Exit /B 1 
	)
Pause
Exit /B

:RenNNN
	Set /A Num+=1
	If %Num% GTR %5 Exit /B 1 
	Call Set "NNum=%%Num:~-%4%%"
rem	2>nul Ren "%~1\%~2" "%~3%NNum%%~x2" ||GoTo :RenNNN
	2>nul Ren "%~1\%~2" "%NNum%%~3%~x2" ||GoTo :RenNNN
Exit /B 0

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:10, 08-07-2019 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 531
Благодарности: 4

Профиль | Отправить PM | Цитировать


Спасибо, удалил красные строки, теперь все работает для NNNNstart

Отправлено: 01:18, 10-07-2019 | #22



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Переименование указанного количества файлов следуя нумерации

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - Удаление файлов старше 5 дней кроме указанного по имени. Joni Скриптовые языки администрирования Windows 6 11-07-2012 11:18
VBS/WSH/JS - Подсчет количества ini файлов в папке XXXp Скриптовые языки администрирования Windows 14 10-04-2012 02:06
CMD/BAT - [решено] Счетчик количества файлов Arsenik77 Скриптовые языки администрирования Windows 1 28-08-2011 11:13
Удаление файлов из списка указанного в txt blacks2 Вебмастеру 28 02-09-2009 20:09
Интерфейс - [решено] Переименование большого количества файлов 7human7 Microsoft Windows 2000/XP 7 22-11-2008 09:48




 
Переход