str='originatingMessageId'
awk -F"/?$str" '$0=$2'
grep -oP "\|${str}\K.*?(?=/${str})"
sed -e "s|/\{0,1\}$str|\n|;s/.*\n//;s|/\{0,1\}$str|\n|;/\n/P;d"
Eu tenho um arquivo, do qual eu preciso extrair palavras entre dois padrões
por exemplo. Eu preciso extrair entre originatingMessageId
Para este arquivo de entrada
userGLN|originatingMessageId0028400000000~20170412194316~1182055~1/originatingMessageId/header|documentException|originatingDocumentId|0028400000000~20170412194316~1182055~1~15~19649/originatingDocumentId|link|operation|DELETE|operation||informationProviderGLN|0028400000000|informationProviderGLN|
o arquivo de saída esperado seria:
0028400000000~20170412194316~1182055~1
str='originatingMessageId'
awk -F"/?$str" '$0=$2'
grep -oP "\|${str}\K.*?(?=/${str})"
sed -e "s|/\{0,1\}$str|\n|;s/.*\n//;s|/\{0,1\}$str|\n|;/\n/P;d"