2011-12-20 16 views
11

Powiel możliwe:
how to show lines in common (reverse diff)?Jak zrobić przeciwieństwo diff?

Czy istnieje polecenie, aby zrobić przeciwieństwo diff? Chcę porównać dwa pliki, jeśli to samo istnieje w obu i utworzyć ich listę. Próbuję dowiedzieć się, jakie wpisy istnieją w obu plikach.

+1

może warto spojrzeć na: http://stackoverflow.com/questions/746458/how -to-show-lines-in-common-reverse-diff, a następnie oznaczyć to pytanie jako duplikat. – ArjunShankar

+0

To może nie zostać zamknięte, jeśli możesz edytować i dodawać szczegóły, na przykład chcesz to zrobić na Linuksie, itp. –

+1

Zorientowałem się, że wcześniej nie wiedziałem o komendzie comm, ale w każdym razie dwie listy chcą wiedzieć tylko, co jest takie samo comm -1 -2 file1 file2> outputfile.txt dziękuję za pomoc. Prawdopodobnie najłatwiejsza odpowiedź na to, co chciałem. –

Odpowiedz

8

Użyj dołączyć polecenie:

join a.txt b.txt

zakładając pliki są sortowane; jeśli nie:

sort a.txt > sorted_a.txt; sort b.txt > sorted_b.txt; join sorted_a.txt sorted_b.txt 
20

Oto rozwiązanie, które nie zmienią kolejność linii:

fgrep -x -f file1 file2