Как извлечь конкретные данные из таблицы?

Вот таблица...

Group   Name            Designation
2       (John)          Front End Developer
12      (Jim)           Back End Developer
8       (Jill)          Full Stack Developer
21      (Jack)          Front End Developer
2       (James)         Front End Developer
12      (Jane)          Full Stack Developer

Я хочу извлечь имена людей, принадлежащих к одной группе. Здесь Джон и Джеймс принадлежат к группе 2. Какую (комбинацию) команд bash или сценарий я должен использовать для отображения следующего вывода

John
James

я использовал различные типы комбинаций grep. Но, кажется, не работает.

5
задан Nayab Basha Sayed
источник

1 ответов

можно использовать sed такой:

sed -n '/^2 /s/.*(\([^)]\+\)).*//p' file.txt

или awk такой:

awk -F "[()]" '/^2 / {print }' file.txt

первое решение заменяет строку строкой, заключенной в круглые скобки, перед ее печатью. Второе решение использует скобки в качестве разделителей полей, а затем печатает только двумя (закрытый шпагат).

0
отвечен Michael Vehrs 2016-06-15 09:11:33
источник

Другие вопросы awk bash command-line linux