У меня есть два файла.
Файл1
Als
Mmp
Ggt1
Файл2 (разделенный вкладками)
cy3 cy5 ID GeneName Zscore
18 18 NM23XX Als 2.34886
456 487 NM375FG Rac 0.898549
Я хочу grep
список файлов1 в файле2. Я хочу, чтобы возвращение было что-то вроде:
18 18 NM23XX Als 2.34886
Я использовал
grep -f file1 file2
, но возвращение - это весь файл с совпадениями, выделенными красным. Я хочу только совпадающие строки. Я также пытался
grep -x -f file1 file2
И не было возврата. Что я могу сделать?
for gene in $(cat file1); do cat file2 | grep $gene; done
18 18 NM23XX Als 2.34886
Вы, кажется, делаете правильные вещи:
$ cat f1
Als
Mmp
Ggt1
$ cat f2
cy3 cy5 ID GeneName Zscore
18 18 NM23XX Als 2.34886
456 487 NM375FG Rac 0.898549
$ grep -f f1 f2
18 18 NM23XX Als 2.34886
$ grep --version
grep (GNU grep) 3.1
...
Возможно, у вашего файла f1 есть завершающий пробел в строке «Als»?