2016-10-24 11 views
0

4 개의 파일의 교회법을 어떻게 발견합니까?4 개의 파일의 교회법을 찾아 내십시오

grep -Fx -f 1.txt 2.txt 3.txt 4.txt을 사용했지만 2 파일에서만 작동하는 것으로 보입니다. 마찬가지로 comm -12 1.txt 2.txt은 4 개의 파일로 확장 할 수 없으므로 데이터를 정렬해야합니다. 내 데이터가 정렬되어 있지 않습니다. 실제로는 안됩니다. 나는 Mac에있다.

입력 :

출력
1.txt 
.css 
.haha 
.hehe 
2.txt 
.ajkad 
.shdja 
.hehe 

3.txt 
.css1 
.aaaaa 
.hehe 

4.txt 
.qwqw 
.kkkmsm 
.hehe 

: .hehe

난 후 다시 34.txt 사용 그렙 저장, 3 및 4에 비해, 제 12.txt에 저장된 1 및 2에 사용 그렙 12.txt 및 34.txt. 그러나 이것을하는 더 좋은 방법이 있어야합니다.

+1

이 경우 교차로에서 무엇을 의미합니까? 짧은 입력 예제와 원하는 출력을 제공 할 수 있습니까? – dawg

+0

거기에 ... – sanjihan

답변

1

당신은 greps을 체인 수 있습니다

grep -f 1.txt 2.txt \ 
| grep -f- 3.txt \ 
| grep -f- 4.txt 

-f-가 아닌 실제 파일을 사용하는 파이프에서 나오는 입력을 의미한다.

+0

Din't work. grep : - : 해당 파일이나 디렉토리가 없습니다. – sanjihan

+0

@sanjihan :'grep -f <(grep -f <(grep -f 1.txt 2.txt) 3.txt) 4.txt'? – choroba

+0

hmm .. 잘못된 결과를 반환합니다 – sanjihan

1

당신은 둘 사이의 교차점 찾을 수 있습니다

$ grep -f <(grep -f <(grep -Fx -f f1.txt f2.txt) f3.txt) f4.txt 
.hehe 
: 당신은 단지 하나의 단어를 원하는 경우,

$ grep -f <(grep -Fx -f f1.txt f2.txt) f3.txt f4.txt 
f3.txt:.hehe 
f4.txt:.hehe 

을 또는 :

$ grep -Fx -f f1.txt f2.txt 
.hehe 

그런 다음 다른 두 사람과 함께 입력으로 그 사용을

+0

흠, 불행히도 잘못된 결과를 반환합니다. – sanjihan