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

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

Ветеран


Contributor


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

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


modzilla,
Цитата modzilla:
необходимо по запуску батника вторую строку с 1.тхт, вставить в четвертую строку файла 2.bat »
это не ответ, скорее упрямство и занудство (извините за хамство). Тем более смысл строк:
Цитата modzilla:
Set ""
Set "3.3.3.3" »
мне не ясен.
Но, как спрошено, так и отвечено :)
Код: Выделить весь код
@Echo Off
Set "Txt=Z:\Soft_In\1.txt"
Set "Bat=Z:\Soft_In\2.bat"

Set /A NstrBat=4
Set /A NstrTxt=2

Set /A i=%NstrTxt%-1

>"%Bat%.tmp" (
Echo @Echo Off
Echo:
Echo Set ""

FOR /F "usebackq delims=" %%s IN (`more +%i% "%Txt%"`) DO Echo Set "%%s" &GoTo :Cont1)
Del "%Bat%.tmp" 
GoTo :Eof

:Cont1
>>"%Bat%.tmp" (FOR /F "usebackq delims=" %%s IN (`more +%NstrBat% "%Bat%" 2^>nul`) DO Echo %%s)

Move /Y "%Bat%.tmp" "%Bat%" >nul
Скрипт заменяет первые 3 строки в 2.bat на то, что указано в скрипте:
Код: Выделить весь код
Echo @Echo Off
Echo:
Echo Set ""
Четвёртой строкой записывает
Set "вторую строку из 1.txt"
и затем все оставшиеся строки из 2.bat
Единственное, все пустые строки в 2.bat будут съедены.

В Вашей постановке мне кажется какое-то извращение.

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


Последний раз редактировалось megaloman, 24-11-2017 в 16:35.

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

Отправлено: 16:30, 24-11-2017 | #4