Я пытаюсь изменить файл .conf на сервере Linux, но в файле .conf нет разделов. Я хочу искать в паре ключ/значение для определенного ключевого слова, а затем удалять пару строк над этой строкой и некоторые строки ниже этой строки.Использование ConfigParser для удаления строк в файле конфигурации без разделов
Как я могу достичь этого, когда нет заголовков разделов? Должен ли я использовать ConfigParser?
Кроме того, во всем файле повторяются имена ключей. В приведенном ниже разделе кода я хочу найти «ключевое слово» в строке «каталог» и удалить две строки выше, а оставшуюся часть ниже.
database ldbm
loglevel 0
directory /home/name/NameServer/var/openldap-ldbm-CMDB-keyword
suffix "o=CMDB-keyword"
suffix "dc=CMDB-keyword,dc=com"
rootdn "cn=admin,o=CMDB-keyword"
rootpw (blahblah)
schemacheck on
lastmod off
sizelimit 100000
defaultaccess read
dbnolocking
dbnosync
cachesize 100000
dbcachesize 100000000
dbcacheNoWsync
index objectclass pres,eq │
index default pres,eq │
index termName pres,eq
вы открыты к использованию таких инструментов linux, как awk или grep? – iruvar
Да, grep находится на сервере. Должен ли я использовать это вместо ConfigParser? –
От этого зависит. Можете ли вы добавить больше контекста в фрагмент файла конфигурации выше. Когда вы говорите «удалите остальную часть материала ниже», сколько строк точно? – iruvar