![]() |
Замена строк.
Привет всем, есть файл config.xml в нём куча строк.
Мне нужно заменить строки Код:
<AdvertPlaceholder>1</AdvertPlaceholder> Код:
<AdvertPlaceholder>0</AdvertPlaceholder> Код:
<AdvertEastRailsEnabled>1</AdvertEastRailsEnabled> Код:
<AdvertEastRailsEnabled>0</AdvertEastRailsEnabled> Код:
setlocal EnableDelayedExpansion |
http://forum.oszone.net/post-2667038-9.html
Вообще, такие скрипты пишутся для случаеd поиска и замены во многих файлах сразу. Если файл один, то хороший редактор с регулярками (AkelPad, Sublime, Notepad++, Syn2 ,... тысячи их) быстрей, удобней и проще. |
Мне нужен бат скрипт!
|
|
Наверно нужно экранировать символы?
|
angel_lyucifer,
Вот CMD
Код:
@Echo Off Но надёжнее VBS
Код:
Set WSS = CreateObject("WScript.Shell") |
Цитата:
|
Цитата:
|
Цитата:
Он из файла удаляет определённые важные строки... |
Цитата:
|
angel_lyucifer, Если можно, представьте Ваш файл упаковав его, например, winrar. Какие строки удаляются? А vbs-скрипт справляется успешно?
Мой конфиг обработался успешно |
Вложений: 1
Цитата megaloman:
Если можно, представьте Ваш файл упаковав его, например, winrar. » Вот. http://forum.oszone.net/attachment.p...1&d=1487615553 |
Вложений: 1
А vbs-скрипт справляется успешно?
Из бат скрипта сложно передавать строку из переменной %SLOGIN% в vbs-скрипт... |
angel_lyucifer, У Вас в файле присутствуют строки с >9000 символов. Я не знаю, как в CMD это обработать. VBS работает нормально.
Цитата:
Вот экзотический способ: батник генерирует vbs-скрипт с нужным путём, запускает его, после работы удаляет. Радость в том, что не надо иметь отдельный vbs-файл
Код:
@Echo Off |
Цитата:
Код:
For /F "delims=" %%A In ('Dir "%AppData%\Skype\main.db" /S /B') Do (set Skype=%%~A) Как всё это можно было бы сделать с помощью VBS? Я не знаю... |
angel_lyucifer, Не вчитываюсь в Ваш код, но главное: Вы определили SLOGIN и Вы за него отвечаете. Поставьте текст Вашего скрипта после моего @Echo Off, удалите
>>"%~dpnx0.vbs" echo 'MsgBox File_In >>"%~dpnx0.vbs" echo File_In = "Z:\Box_In\config.xml" '''''''''''' >>"%~dpnx0.vbs" echo File_Out = "Z:\Box_In\config.xml.vbs.tmp" '''''''''''' Должно получиться. Вот второй вариант: имеем Ваш скрипт, Вы определили SLOGIN и Вы за него отвечаете. Необходимо иметь VBS -скрипт, при его вызове в него передадим путь к конфигу. Итак, пусть vbs - скрипт находится Z:\vbsscript.vbs (естественно, Вам определять его имя и местоположение) В Вашем батнике после определения SLOGIN пишем: Код:
Set "VBS=Z:\vbsscript.vbs" vbsscript.vbs имеет вид
Код:
Set WSA = WScript.Arguments |
Цитата:
Спасибо большое за терпение и понимания.... |
Цитата:
я поправил код, не надо экранировать
Код:
@Echo Off |
Подобные вещи, за редким исключением, должны делаться посредством парсера XML на WSH/PoSH.
На WSH: Скрытый текст
Код:
Option Explicit Путь к целевому файлу config.xml задаётся аргументом скрипта. Если заранее известно его расположение: Цитата:
|
Время: 06:10. |
Время: 06:10.
© OSzone.net 2001-