한 파일에 나열된 패턴을 찾아 다른 파일에서 찾고 싶습니다. 두 번째 파일에는 쉼표로 구분 된 패턴이 있습니다.
예를 들어 첫 번째 파일 F1에는 유전자가 있습니다
ENSG00000187546
ENSG00000113492
ENSG00000166971
두 번째 파일 F2에는 필요한 유전자가 몇 개 더 있고 (5 개 열)
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에 표시되지 않습니다.
내 코드는 다음과 같습니다
grep -f "F1.txt" "F2.txt" >output.txt
그 값 중 하나가 있고 그와 관련된 데이터가 있더라도 그 값을 원합니다.이를 수행 할 방법이 있습니까?
이 게시물을 참조하십시오 : Bash의 다른 큰 파일에서 파일 행을 찾는 가장 빠른 방법
—
codeforester
grep
기본적으로 패턴 을 앵커 할 수 있습니까?grep -f <(echo a) <(echo 'a,b')
출력을 생성 합니까 ?