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

Показать сообщение отдельно

Ветеран


Contributor


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

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


Цитата:
...маска файла всегда разная...я просто создаю новую строчку с нужным именем...
...Каждый из этих файлов надо переименовать...
Впереди имени файла и сзади имени файла (перед расширением) ... надо добавить ... всегда разное
... но мне надо бы в 1 строчку все это дело...
... у меня 1800 строк в коде...
... добавить в эту же строку(без второй) команду, чтобы выводило в консоль имя файла или полный путь... скажем, выводила те файлы, которые переименованы уже конечным именем, и те файлы, которые не были найдены?
Чтобы сделать в одну строчку, я бы предложил написать процедуру и вызывать её для каждой маски файла. В аргументах: маска файла с путём (если надо), префикс и суффикс при переименовании. Без процедуры может быть и возможно записать все ваши пожелания, но получится длинно и неудобно, я не берусь. Для 1800 строк сомневаюсь, что в консоли Вы что-то успеете увидеть, поэтому организую лог-файл, который потом можно смотреть текстовым редактором.
Вот вариант
Код: Выделить весь код
@Echo Off

Set "LogFile=%Tmp%\%~n0.log"
Del "%LogFile%" 2>nul

Call :FRen "Z:\Tra La La\ForgeAmidst-*.jar" "1_GUImap_" "-FAXV"
Call :FRen "Z:\Tra La La\Schematica-*.jar" "1_ADMIN_WD_" "-FAxV"
Call :FRen "Z:\Tra La La\S3chematica-*.jar" "1_ADMIN_WD_" "-FAxV"

Notepad "%LogFile%"
GoTo :Eof

:FRen
	If Exist %1 (
		FOR /F "usebackq delims=" %%f IN (`dir /b %1 2^>nul`) DO (
			Move /Y "%~dp1%%f" "%~dp1%~2%%~nf%~3%%~xf" >nul
			If Exist "%~dp1%~2%%~nf%~3%%~xf" (
				Echo +++ "%~dp1%%f" ----^> "%~2%%~nf%~3%%~xf" >>"%LogFile%"
			) Else (
				Echo ??? not renamed "%~dp1%%f" ----^> "%~2%%~nf%~3%%~xf" >>"%LogFile%"
			)
		)
	) Else (
		Echo --- %1 not found >>"%LogFile%"
	)
GoTo :Eof

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


Последний раз редактировалось megaloman, 30-12-2016 в 16:15.


Отправлено: 16:02, 30-12-2016 | #14