Często robię coś grep -R foo .
w rodzaju podstawy projektu. Jest to pomocne, ale wyniki są rozcieńczane przez włączenie pliku binarnego. temp i testuj pliki, które mnie nie obchodzą. Tak więc kończę na umieszczaniu 2>&1 | grep -vE “Binary|/tmp/|/test/“
, co odfiltrowuje rzeczy, na których mi nie zależy. Problem polega na tym, że pisanie za każdym razem jest trudne. Wszystko, w tym i po 2> i 1, pozostaje takie samo od zapytania do zapytania. Więc chcę umieścić to w pseudonimie, który by mi pozwolił grep -R foo . <thingie>
, gdzie coś jest dość krótkie. Próbowałem aliasy i zmienne środowiskowe, ale aliasy działają tylko wtedy, gdy są pierwszym słowem w wierszu, a zmienne środowiskowe, które mogę rozwinąć, ${thingie}
ale w tym procesie wydaje się, że rurociąg jest zepsuty. Wszelkie pomysły na to, jak to zrobić?
źródło
Odpowiedzi:
Tak, funkcja jest właściwą drogą. Jeśli masz GNU grep
--exclude-dir
opcji, aby wyszukiwanie rekurencyjne nawet nie przeszkadzało.--binary-files=without-match
opcji, aby zignorować pliki binarne (alias-I
).Więc:
Wtedy zadzwoń
źródło