Хотя я не уверен, что вывод, который вы получаете - чистый json или нет, если вы в порядке с awk
, не могли бы вы попробовать следующее (Если у вас правильный json, тогда, пожалуйста, используйте jq или парсер, который специально сделан для jsonпарсинг).
Your_command | awk -v s1="\"" '
match($0,s1 "message" s1 ":" s1 "[^\"]*"){
num=split(substr($0,RSTART,RLENGTH),array,"\"")
print array[num]
}'
РЕДАКТИРОВАТЬ: Если у вас есть инструмент jq
, не могли бы вы попробовать следующее (не проверено).
curl -# -L "http://example.web:8080/rest/message" | jq '.[] | .message'