Имя пользователя:
Пароль:
 

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

Ветеран


Contributor


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

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


ruslaw,Чтобы не плодить кучу батников, я бы использовал подпрограммы, например
Код: Выделить весь код
@Echo Off

Call :Indexer
Call :Replace

GoTo :Eof

:Indexer
	chcp 1251
 	Set "BoxIn=E:\test"
 	Set "LogExt=txt"
 	Call :DirTxt "%BoxIn%" 
 	For /F "usebackq delims=" %%d In (`Dir "%BoxIn%" /b /A:D /S 2^>nul`) DO Call :DirTxt "%%d"
	chcp 866
 	GoTo :Eof
 	:DirTxt
 	rem:: заменяем %~nx1 на 1ndex и получаем индексный файл с названием index.html вместо html-файла названного именем папки
	Set "OutLog=index.%LogExt%"
 	>"%~1\%OutLog%" (For /F "usebackq delims=" %%f In (`Dir "%~1" /b /A:-D-H 2^>nul`) DO If /I Not "%%f"=="%OutLog%" @Echo %%f
	chcp 866
GoTo :Eof

:Replace
	cscript replace.vbs "E:\path-1\index.txt" "заменяемый текст1" "заменяющий текст1"
 	rem .........
 	cscript replace.vbs "E:\path-N\index.txt" "заменяемый текстN" "заменяющий текстN" 
GoTo :Eof
Я не вчитывался в Ваши батники, я их использовал как иллюстрацию возможной структуры скрипта

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

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

Отправлено: 14:31, 15-01-2018 | #3