grep -f는 "소스" 파일의 마지막 줄에 대한 결과만 제공합니다.

grep -f는 "소스" 파일의 마지막 줄에 대한 결과만 제공합니다.

파일 "B"에서 찾으려는 항목 목록이 포함된 파일 "A"가 있습니다. 파일 A의 모든 항목은 한 줄에 하나씩 나열되고 B는 한 줄에 여러 항목이 있는 tsv 파일입니다(줄에 있는 항목 중 일부는 A 줄에 나열된 항목일 수 있음). 파일 A의 목록을 사용하려고 합니다. 그룹 B의 단일 행에 AI가 출력으로 갖고 싶어하는 행이 있는 경우.

내가 해냈어

grep -f A B

이것은 작동하지만 A의 마지막 행에만 적용됩니다.

어떤 제안이 있으십니까?

답변1

grep귀하의 명령을 알고 있기 때문에 솔루션에 올바르게 응답하려면 귀하의 버전과 파일 내용에 대한 추가 정보가 필요할 수 있습니다.~해야 한다일하다.

다음 두 파일을 고려 하십시오 a.txt.b.txt

cat a.txt

match1
match2
match3
match4
match5

cat b.txt

match1
match2
fail3 match3
fail4
match5

귀하의 명령을 사용했다면 1, 2, 3, 5행이 일치할 것으로 예상됩니다. 보자:

grep -f a.txt b.txt

match1
match2
fail3 match3
match5

관련 정보