вставка новой строки после нужной

L
На сайте с 13.01.2011
Offline
125
646

задача одной командой sed или perl поставить массово везде строку

expires 7d;

после строки

root $root_path;

в конфиге nginx.conf

чтобы было так


location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
root $root_path;
expires 7d;

скажем команда заменяет SuexecUserGroup на AssignUserID везде

perl -p -i -e 's/SuexecUserGroup/AssignUserID/g' apache2.conf

что то в этом роде - поковырялся с часок - пока не получилось

Контакты-icq 535609 ()
Андрей
На сайте с 30.09.2009
Offline
482
#1

Logger, ответ на ваш вопрос на скриншоте:

EuroHoster.org ( https://eurohoster.org/ru/ ) - территория быстрых серверов. Выделенные серверы, VPS, SSL, домены и VPN.
L
На сайте с 13.01.2011
Offline
125
#2
WapGraf:
Logger, ответ на ваш вопрос на скриншоте:

да, работает - но смещение влево не совсем ок

[ATTACH]150992[/ATTACH]

у меня получилось норм так


perl -p -i -e 's/root_path;/root_path;\n expires 7d;/g' nginx.conf

[ATTACH]150991[/ATTACH]

после ;\n 25 пробелов и все ок

png 11.png
png 12.png
Андрей
На сайте с 30.09.2009
Offline
482
#3
Logger:
после \n 25 пробелов и все ок

А не проще подобрать нужное количество "\t" (предположительно три \t\t\t) ? :)

L
На сайте с 13.01.2011
Offline
125
#4

да спасибо! так работает ок ;)


perl -p -i -e 's/root_path;/root_path;\n\t\t\texpires 7d;/g' nginx.conf

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий