Я хочу знайти зразки, які перераховані в одному файлі, і знайти їх в іншому файлі. Другий файл має ті шаблони, розділені комами.
наприклад, перший файл F1 має гени
ENSG00000187546
ENSG00000113492
ENSG00000166971
а другий файл F2 має ті гени разом із ще деякими колонками (п’ять стовпців), які мені потрібні
region gene chromosome start end
intronic ENSG00000135870 1 173921301 173921301
intergenic ENSG00000166971(dist=56181),ENSG00000103494(dist=37091) 16 53594504 53594504
ncRNA_intronic ENSG00000215231 5 5039185 5039185
intronic ENSG00000157890 15 66353740 66353740
Отже, ген ENSG00000166971, який присутній у другому файлі, не відображається в греппі, оскільки в ньому є інший ген, розділений комою.
Мій код:
grep -f "F1.txt" "F2.txt" >output.txt
Я хочу, щоб ці значення були навіть у тому випадку, якщо одне з них є, і пов'язані з ним дані. Чи є спосіб це зробити?
grepприв'язує свої шаблони за замовчуванням? Чиgrep -f <(echo a) <(echo 'a,b')дає якийсь вихід?