2017-02-20 28 views
0
LoadModule proxy_ftp_module /usr/jboss/jbossweb/navapp_ws1/modules/mod_proxy_ftp.so 
LoadModule proxy_http_module /usr/jboss/jbossweb/navapp_ws1/modules/mod_proxy_http.so 
LoadModule proxy_connect_module /usr/jboss/jbossweb/navapp_ws1/modules/mod_proxy_connect.so 
LoadModule cache_module /usr/jboss/jbossweb/navapp_ws1/modules/mod_cache.so 
LoadModule suexec_module /usr/jboss/jbossweb/navapp_ws1/modules/mod_suexec.so 
LoadModule disk_cache_module /usr/jboss/jbossweb/navapp_ws1/modules/mod_disk_cache.so 
LoadModule cgi_module /usr/jboss/jbossweb/navapp_ws1/modules/mod_cgi.so 
LoadModule dtsagent /www/apps/dynatrace/dynatrace.so 

Я хочу найти LoadModule dtsagent /www/apps/dynatrace/dynatrace.so в этом файле и удалить все, что есть LoadModule dtsagent ........Удаление существующей линии заменить новым значением в httpd.conf

В настоящее время я работаю с этим, чтобы добавить строку ниже тот же блок grep -q -F 'LoadModule dtagent_module' $jvm_home/$webservers/conf/httpd.conf || sed "/^LoadModule/,/^$/!b;/^$/i\LoadModule dtagent_module /www/apps/dynatrace/$webservers/agent/lib64/libdtagent.so" -i file

+1

Непонятно, чего именно вы хотите достичь. Просто догадаться, 'grep -v '^ LoadModule dtsagent" может быть полезно? – DevSolar

+0

Вы можете узнать [Как задать хороший вопрос] (http://stackoverflow.com/help/how-to-ask) и создать [Минимальный, Полный и Подтверждаемый] (http://stackoverflow.com/help/mcve). Это облегчает нам помощь. –

+0

Эй, ребята, извините за неясные вопросы. Поэтому в основном я просто хочу найти все строки, которые соответствуют «LoadModule dtsagent» и удалить. –

ответ

0

это легко для СЭД:

sed '/^LoadModule dtsagent/d' httpd.conf 

СЭД будет искать любую строку, начинающуюся /^LoadModule dtsagent/ и удалите эту строку. «^» Указывает начало строки. Удалите его, если ваш поисковый запрос может находиться где угодно в строке.

+0

Thxs John, это именно то, что мне нужно. –

1

использовать глобальную команду экс

I е редактирование файла httpd.conf в Vim, вы могли бы выдать глобальную команду экс:

:g/^LoadModule dtsagent/d

В словах, это просто означает, что найти все строки, соответствующие шаблон и удаление:

^LoadModule dtsagent

Я решил использовать якорь, ^, чтобы указать, что мы хотим найти этот шаблон, начинающийся в начале строки.

Наконец, как только совпадение найдено, я хочу, чтобы строка была удалена, поэтому я помещаю команду delete line в конец, d.