Это можно сделать одним awk
более общим способом. Я добавил сюда переменную с именем occur
, где мы можем упомянуть, например, какое значение вхождения мы хотим напечатать.
awk -v occur="2" -F' = ' '/token/{if(++count==occur){print}}' config.txt
В этом случае будет напечатано значение только для 2-го поля токена строки (2-е вхождение).
Можно изменить значение occur
и вывести значение токена этой строки.
РЕДАКТИРОВАТЬ: Чтобы сделать его более быстрым с точки зрения обработки, я теперь добавляю exit
в свой код, что вынудит программу awk выйти из программы как можно скорее, она найдет ее совпавшая строка совпадающего вхождения.
awk -v occur="2" -F' = ' '/token/{if(++count==occur){print;exit}}' config.txt