Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование в *nix (http://forum.oszone.net/forumdisplay.php?f=35)
-   -   Заменить строку в определённом месте файла (http://forum.oszone.net/showthread.php?t=330330)

DJ Mogarych 07-10-2017 16:47 2768950

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

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

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

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

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

Kent 22-10-2017 00:05 2772302

Наверняка можно с помощью 'sed'.
Посмотрите здесь и здесь.

Ylik 04-01-2018 19:51 2788943

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


Время: 06:21.

Время: 06:21.
© OSzone.net 2001-