У меня есть входной файл FILE1.TXT, как показано ниже.
11 id1
12
13 AGE = 20
14 NAME = NAME1
15
16 id2
17
18 AGE = 30
19 NAME = NAME2
.
.
.
110 idXYZ
111
112 AGE = AGEXYZ
113 NAME = NAMEXYZ
114
115 idZZZ
116
Я хочу найти все поля, принадлежащие определенному идентификатору, и получить значение NAME
Мне удалось перебрать каждый Id и сформировать команду ниже для каждого Id по мере необходимости.
sed -n '/11/,/14/p' FILE1.TXT | grep NAME | awk -F "= " '{print $2}'
Проблема в том, что я получаю вывод NAME1 , в дополнение к этому я также получаю NAMEXYZ .
Что нужно изменить, чтобы я получил только NAME1, но не NAMEXYZ ?
В качестве обходного пути работают следующие команды.
sed -n '/11/,/14/p' FILE1.TXT | grep NAME | awk -F "= " '{print $2}'|head -1
Есть ли «переключатель» или я что-то упустил?
^(random no of spaces)11
?