2013-04-30 11 views
12

Jak mogę poprawić poniższą metodę porównywania niektórych wierszy (wiersze zaczynające się od "@") dwóch plików? Jestem pewien, że można to zrobić na jednej linii i bez kłopotliwych plików tymczasowych. Jestem całkiem nowy w Linuksie, więc idź na mnie łatwo! Z góry dziękuję.Używanie danych wyjściowych z dwóch wierszy z różnicą

grep "^@" myfile1 > temp1 
grep "^@" myfile2 > temp2 
diff temp1 temp2 

Odpowiedz

21

w bash, można użyć <(...), która będzie obsługiwać temporaries (zwykle realizowane jako nazwanych potoków pod maską) dla Ciebie:

diff <(grep "^@" myfile1) <(grep "^@" myfile2) 
+1

to działa. Dzięki. –

+0

Nie nazywają się rurami, nazywają się rurami :) –

+0

@MattJoiner Więc rury Schrödingera? –

Powiązane problemy