Yani bir ilgisi var grep- Boru yüzünden olduğunu |standart çıkış akışı yönlendirir stdoutoysa Permission deniedmesajlar standart hata akışında bulunmaktadır stderr. Sen kullanarak akışları birleştirerek istediğiniz sonucu elde edebiliriz 2>&1(kimin dosya belirleyicisidir akışı yönlendirme 2kimin dosya belirleyicisidir akışına 1böylece) o stderrsıra sıra stdoutgrep komutunun girişine borulu alır
find / -name libGL.so.1 2>&1 | grep -v 'denied'
ancak, onu stderryeniden yönlendirerek tamamen atmak daha olağan olurdu ./dev/null
find / -name libGL.so.1 2>/dev/null
2 yerine & &>> 1 |
Bash man sayfasına bir göz atarsanız, muhtemelen bu bulanıklığı fark edeceksiniz:
Eğer |&kullanılır, komutun standart hata borusunun içinden Command2'ı standart girişine bağlanır; için kestirme 2>&1 |.
STDERR ve STDOUT'a katılmak istiyorsanız bu yapıyı da kullanabilirsiniz:
find / -name libGL.so.1 |& grep -v 'denied'
/foo/bar/denied/libGL.so.1, birleştirmekstdoutvestderrardından filtrelemek sonucu gizler