Мои входные файлы:
- text.txt - файл для поиска
- patterns.txt - файл, содержащий список слов (по одному слову в строке), которые нужно можно искать в файле text.txt.
text.txt:
abc def ghi
jkl mno pqr ; stu
zzz yyy xxx
jkl abs abc1 ; mno
jjj aaa abc1M1
, а pattern.txt:
abc
pq
abc1M1
Если я do:
| => grep -f patterns.txt text.txt
abc def ghi
jkl mno pqr ; stu
jkl abs abc1 ; mno
jjj aaa abc1M1
Однако должны быть возвращены только две строки:
abc def ghi
jjj aaa abc1M1
то есть только те строки, которые соответствуют полным словам «ab c» и «abc1M1», как указано в файле patterns.txt. Как мне структурировать свой запрос?
спасибо за вашу помощь!
Изменить: Сайрус предложил попробовать опцию '-Fwf', но она все равно не дает мне того, что я хочу получить :
| => grep -Fwf patterns.txt text.txt
abc def ghi
Кроме того, я запускаю grep на моей ма c:
| => grep --version
grep (BSD grep) 2.5.1-FreeBSD