![UNIX에서 줄을 찾기 위해 grep을 사용할 때 발생하는 문제 [닫기]](https://linux55.com/image/34263/UNIX%EC%97%90%EC%84%9C%20%EC%A4%84%EC%9D%84%20%EC%B0%BE%EA%B8%B0%20%EC%9C%84%ED%95%B4%20grep%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%A0%20%EB%95%8C%20%EB%B0%9C%EC%83%9D%ED%95%98%EB%8A%94%20%EB%AC%B8%EC%A0%9C%20%5B%EB%8B%AB%EA%B8%B0%5D.png)
약 5000개의 패턴(줄 간격)이 포함된 .txt 파일을 사용하여 18000줄이 포함된 다른 파일에서 일치하는 항목을 검색하려고 합니다. 지금까지 나는 인터넷에서 찾을 수 있는 모든 형태의 grep 및 awk를 시도했지만 여전히 작동하지 않아서 완전히 당황했습니다.
다음은 각 파일의 일부 텍스트입니다.
패턴.txt
rs2622590
rs925489
rs2798334
rs6801957
rs6801957
rs13137008
rs3807989
rs10850409
rs2798269
rs549182
추가 공간이나 아무것도 없습니다.
파일.txt
snpid hg18chr bp a1 a2 zscore pval CEUmaf
rs3131972 1 742584 A G 0.289 0.7726 .
rs3131969 1 744045 A G 0.393 0.6946 .
rs3131967 1 744197 T C 0.443 0.658 .
rs1048488 1 750775 T C -0.289 0.7726 .
rs12562034 1 758311 A G -1.552 0.1207 0.09167
rs4040617 1 769185 A G -0.414 0.6786 0.875
rs4970383 1 828418 A C 0.214 0.8303 .
rs4475691 1 836671 T C -0.604 0.5461 .
rs1806509 1 843817 A C -0.262 0.7933 .
file.txt는 med 디렉터리에서 직접 다운로드됩니다.
저는 UNIX를 처음 접했기 때문에 어떤 도움이라도 도움이 될 것입니다!
이것은 stackoverflow에서 복사되었습니다. 권장되는 모든 방법을 시도했지만 출력이 여전히 비어 있습니다. 텍스트 파일에 구문 문제나 뭔가가 누락되었을 가능성이 있습니까?
추신: 내가 시도한 것들:
grep -Fw -f Pattern.txt File.txt
fgrep -f Pattern.txt File.txt
FILENAME=$1
awk '{kount++;print $0}' $FILENAME | fgrep -f - Pattern.txt
awk 'NR==FNR{pats[$0]; next} $2 in pats' Pattern.txt File.txt
답변1
GNU grep으로 이것을 시도해 보세요:
grep -f Pattern.txt File.txt