2016-09-30 2 views
0

Я этоКак Grep для всей строки после слова в строке сопоставляется

-Xmx10240m -Xms10240m -verbose: дс -XX: + CMSParallelRemarkEnabled -XX: + UseParNewGC -XX: + ScavengeBeforeFullGC -Dsun.net.inetaddr.ttl = 3600 -XX: CMSInitiatingOccupancyFraction = 70 -XX: + UseCMSInitiatingOccupancyOnly -XX: + PrintTenuringDistribution -XX: SurvivorRatio = 6 -XX: + UseConcMarkSweepGC -XX: + PrintGCDetails -XX: + PrintGCDateStamps -XX: + PrintHeapAtGC -XX: PermSize = 512m -XX: MaxPermSize = 512m -Xloggc: /www/logs/jboss/macys-navapp_master_prod_cellA_m01/gc-log.txt -XX: + HeapDumpOnOutOfMemoryError -XX: HeapDumpPath =/www/logs/heapdump/navapp_master_prod_cellA__m01/navapp_master_prod_cellA_m01.hprof -Djava.net.preferIPv4Stack = true -Dorg.jboss.resolver.warning = true -Djbo ss.modules.system.pkgs = org.jboss.byteman -Djava.awt.headless = true -XX: + UseCompressedOops -Dclient.encoding.override = ISO-8859-1 -XX: + DisableExplicitGC -Dorg.apache.jasper. Constants.USE_INSTANCE_MANAGER_FOR_TAGS = false -Dorg.apache.jasper.Constants.USE_INSTANCE_MANAGER -Dorg.apache.jasper.runtime.JspFactoryImpl.USE_POOL = false -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER = true -XX: NewSize = 3072m - XX: MaxNewSize = 3072m -agentpath: /www/a/apps/dynatrace/dt.so=name=server1_ProdCellA_master_m1,server=ct_collector: 9998 -Dfile.encoding = ISO-8859-1 -Dsdp.configuration.home =/www/приложения/свойства -XX: + UseLargePages -Dzookeeper.sasl.client = ложь

Я хочу, чтобы иметь возможность Grep всю эту строку после того, как я соответствовал "-agentpath" «-agentpath:/WWW/а/приложение/dynatrace/dt.so = name = server1_ProdCellA_master_m1, server = ct_collector: 9998 "

Это текущая команда, с которой я работаю, но она не работает «cat cached_java_opts | AWK '/ -agentpath/{печати $ (NF)}'»

Спасибо Вам

ответ

1

awk решение:

awk -F'-agentpath:' '{split($2,a," ") ;print FS a[1]}' infile 
-agentpath:/www/a/apps/dynatrace/dt.so=name=server1_ProdCellA_master_m1,server=ct_collector:9998 

grep: более или менее такой же, как уже ответили.

grep -oP '\-agentpath:.*?\s' infile 
-agentpath:/www/a/apps/dynatrace/dt.so=name=server1_ProdCellA_master_m1,server=ct_collector:9998 
+0

Thxs PS эта работа тоже очень –

1

запуск grep как это:

grep -o '\-agentpath[^ ]*' yourfile 

The -o опционных гравюр только шаблон соответствия (не совпадающая строка). Поскольку шаблон сконфигурирован для расширения до первого пространства, вы получите весь аргумент (это работает, потому что это не последний аргумент командной строки). Возможно, его можно было бы улучшить с помощью grep -oE '\-agentpath([^ ]*|.*$)'

+0

Спасибо вам за ур ответ, но, похоже, как «-agenth» это думаю, что это больше вариантов GREP becuase из «-», хотя я поставил «-» вокруг него –

+0

дописывания побег полукокса как Grep -о '\ -agentpath [^] *' yourfile –

+0

Извините, не удалось проверить его здесь, потому что мой grep на работе не имеет опции '-o' (это довольно недавно). Ред. Теперь понимает '-agentname'. @muzido спасибо за исправление этого! –