UNIX에서 줄을 찾기 위해 grep을 사용할 때 발생하는 문제 [닫기]

UNIX에서 줄을 찾기 위해 grep을 사용할 때 발생하는 문제 [닫기]

약 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

관련 정보