2015-12-15 4 views
-1

Я работаю с ПАРТИИ и у меня есть файл конфигурации Apache, как это:Выберите часть текстового файла ПАРТИИ

< IfModule mpm_prefork_module > 
    StartServers 5 
    MinSpareServers 5 
    MaxSpareServers 10 
    MaxRequestWorkers 250 
    MaxConnectionsPerChild 0 
</IfModule > 


< IfModule mpm_worker_module > 
    StartServers 3 
    MinSpareThreads 75 
    MaxSpareThreads 250 
    ThreadsPerChild 25 
    MaxRequestWorkers 400 
    MaxConnectionsPerChild 0 
</IfModule > 

Мой вопрос, если есть какие-либо образом, вы можете выбрать только часть этот файл, то есть «читать» только текст между < IfModule mpm_worker_module> и </IfModule> так что выход только:

< IfModule mpm_worker_module > 
    StartServers 3 
    MinSpareThreads 75 
    MaxSpareThreads 250 
    ThreadsPerChild 25 
    MaxRequestWorkers 400 
    MaxConnectionsPerChild 0 
</IfModule > 

Спасибо! : D

+0

Таким образом, вы хотите только второй вариант? Или последний? Есть ли еще какие-нибудь модули? Как вы можете сказать, какой из них вам нужен? – npocmaka

+0

Ответ: *** Да. *** На самом деле существует множество способов, но если вы не показываете, что вы пробовали, и описываете, где вы застряли, этот вопрос «сделайте мою работу для меня» отключен, тема на SO ... – aschipfl

+0

Что вы хотите делать с линиями внутри вашего блока? Храните их в переменных, экспортируйте их в другой файл или каким-то образом их выполните? – MichaelS

ответ

0

Как я не знаю, что вы хотите делать с линиями внутри между < IfModule mpm_worker_module > и </IfModule >, я просто вышлю их. Тем не менее, это не очень важно для их обработки любым другим способом. Вам все равно нужно установить inFile в фактический файл, который вы хотите проанализировать.

@echo OFF 
setlocal enabledelayedexpansion 
set inFile=input.txt 
set startTokenFound=0 
for /F "tokens=*" %%l in (%inFile%) DO (
    set line=%%l 
    if "%%l"=="</IfModule >" set startTokenFound=0 
    if !startTokenFound!==1 echo %%l 
    if "%%l"=="< IfModule mpm_worker_module >" set startTokenFound=1 
) 
+0

Большое спасибо, это то, что мне нужно. Причина в том, что я начал работать с партией недавно, и мне не пришло в голову, как это сделать. Правда в том, что мне нужно получить значение между IfModule, потому что, в зависимости от того, как Apache работает, мне нужно получить значение или другое, но я получал все возможные значения. Это было именно так. – MarcSerrano93

Смежные вопросы