Как отобразить поисковый запрос в grep - PullRequest
0 голосов
/ 03 мая 2018

Я хотел бы рекурсивно искать файл (файл1), используя условия поиска из списка (файл2). Файл 1 содержит длинный список элементов, разделенных запятыми в одном столбце. Я хотел бы создать новый файл (file3), содержащий поисковый запрос и строку, содержащую поисковый запрос. Могу ли я использовать grep / sed / awk для этого?

файл 1

A, 1, 2, 3
B, 4, 5, 6
C, 7, 8, 9

файл 2

A
B
C
D

Желаемый файл 3

A A, 1, 2, 3
B B, 4, 5, 6
C C, 7, 8, 9

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

Используя awk для сохранения в file3 используйте этот код: -

awk -F"," 'NR==FNR{k[$0];next}
         {for(i=1;i<=NF;i++)if($i in k){print $i,$0;break}}' file2 file1 > file3

Содержимое будет сохранено в file3 . используйте cat file3 для отображения содержимого file3 .

выход из cat file3

A A, 1, 2, 3
B B, 4, 5, 6
C C, 7, 8, 9
0 голосов
/ 03 мая 2018

Этот awk однострочный должен помочь:

awk -F"," 'NR==FNR{k[$0];next}
         {for(i=1;i<=NF;i++)if($i in k){print $i,$0;break}}' file2 file1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...