Заменить строку в определённом месте файла

Ответить
 • Просмотры: 1
Аватара пользователя
DJ Mogarych

Заменить строку в определённом месте файла

Сообщение DJ Mogarych »

Добрый день!



Подскажите, пожалуйста: есть ли способ заменить строку в конфигурационном файле (в данном случае /etc/apache2/apache2.conf) конкретно в разделе



Код:

Код: Выделить всё

        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted

Нужно заменить AllowOverride None на AllowOverride All, не заходя руками во всякие nano, vim и т. п.

Причём, менять нужно именно в этом разделе, так как в этом файле строки AllowOverride None встречаются не раз. Есть ли у sed или ещё у какой-то утилиты что-нибудь типа "Найти строку с содержанием , затем после неё заменить такую-то строку на другую"? По номерам строк искать не вариант, потому что этот раздел может оказаться и в другом месте файла на другой машине. По номеру вхождения, конечно, точнее, но мало ли что может быть.



Есть ли способ однозначно определить эту строку в этом конкретном разделе?
Аватара пользователя
Kent

Re: Заменить строку в определённом месте файла

Сообщение Kent »

Наверняка можно с помощью 'sed'.

Посмотрите
здесь
и
здесь
.
Аватара пользователя
Kent

Re: Заменить строку в определённом месте файла

Сообщение Kent »

Если у вас много файлов, то пора знать sed и sh. А если файл один, отредактируйте его в любом "блокноте".
Ответить

Вернуться в «Программирование в *nix»