이 스크립트는 F5 설정 파일의 풀 이름을 출력합니다.이 파일을 여러 개의 F5 설정 파일에서 실행하고 싶습니다.^pool에서 읽을 수 있기를 원합니다. ^^} (풀 OR) 줄 시작을 가져옵니다. ... 현재 2348 줄에서 읽으려는 스크립트를 말하면서 원하는 출력을 얻고 있습니다.파일의 일치하는 문자열에서 행을 읽습니다. python
내가 i의 사용을 제거하고 싶습니다. 다른 파일의 F5와 같은 xrange (2348) 설정 파일은
가 작동하는 방법 .. 작은 내가 스크립트가^풀 또는 ^}
현재 스크립트 파일의 라인으로 라인을 읽기 시작 얻을 경우되어 있습니다 :
import re
seenrule = 'false'
File = open("/home/t816874/F5conf/unzip/config/bigip.conf", "r")
for i in xrange(2348):
File.next()
for line in File:
if re.match("(^pool p)", line, re.IGNORECASE):
a = line.lstrip("pool p")
ONE = a[:-2]
print "Pool Name:", ONE
if re.findall(r'(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d] {1,3})', line):
if seenrule == 'false':
x = line.lstrip("members ")
print x
if re.match("(^rule)", line):
seenrule = 'true'
--------------------------------------------- ------------------
내 시도 : 당신의 도움들에 대한
import re
seenrule = 'false'
startline = 'false'
File = open("/home/t816874/F5conf/unzip/config/bigip.conf", "r")
if re.match("(^pool|^})", line):
startline = 'true'
for line in File:
if re.match("(^pool p)", line, re.IGNORECASE):
a = line.lstrip("pool p")
ONE = a[:-2]
print "Pool Name:", ONE
if re.findall(r'(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d] {1,3})', line):
if seenrule == 'false':
x = line.lstrip("members ")
print x
if re.match("(^rule)", line):
seenrule = 'true'
감사합니다!
node 172.0.0.0 {
screen ab2583-1.2
}
node 172.0.0.1 {
screen ab2583-1.3
}
node 172.0.0.3 {
screen ab2584-1.2
}
pool pWWW_abcd_HTTPS {
lb method member predictive
monitor all mWWW_staging.telecom_TCP
members {
0.0.0.0:8421 {}
0.0.0.1:18431 {
session user disabled
}
0.0.0.2:8421 {}
0.0.0.3:18431 {
session user disabled
}
}
}
pool pWWW_vcm2APP.defg_HTTP {
lb method member predictive
monitor all mWWW_vcm2APP.defg_TCP
members 0.0.0.5:27110 {}
}
node..
....
.
읽을 수 있고 정규식을 사용하여 일치시키려는 곳의 conf 파일 내용을 공유 할 수 있습니까? –
편집 됨 thanks .. – KiloBravo