Ответ 1
Вы можете использовать многострочный режим, тогда ^ соответствует началу строки:
#!/usr/bin/python
import io
import re
f = open('/etc/ssh/sshd_config','r')
strings = re.search(r"^\s*[^#]*IgnoreRhosts\s+yes", f.read(), flags=re.MULTILINE)
print(strings.group(0))
Обратите внимание, что без этого режима вы всегда можете заменить ^
на \n
Отметьте также, что этот файл откалиброван как помидор таким образом:
^IgnoreRhosts\s+yes
достаточно хорош для проверки параметра
EDIT: лучший способ
with open('/etc/ssh/sshd_config') as f:
for line in f:
if line.startswith('IgnoreRhosts yes'):
print(line)
Еще раз нет причин иметь ведущие пробелы. Однако, если вы хотите быть уверены, что всегда можете использовать lstrip()
.