Frage

Ich war gegeben diese Syntax von Benutzern phi

find . | awk '!/((\.jpeg)|(\.jpg)|(\.png))$/ {print $0;}' | xargs grep "B206"

Ich möchte die Ausgabe von grep zu unterdrücken: kann nicht geöffnet werden ..... und finden:. Nicht öffnen können Zeilen aus den Ergebnissen
Beispielausgabe werden ignoriert:

grep: can't open ./cisc/.xdbhist
find: cannot open ./cisc/.ssh
War es hilfreich?

Lösung

Haben Sie versucht, stderr Umleitung auf / dev / null?

2>/dev/null

So sind die oben Umleitungen No.2 streamen (die stderr ist) auf / dev / null. Das ist Shell abhängig, aber die oben sollte für die meisten arbeiten. Da find und grep verschiedene Prozesse sind, können Sie es für beide zu tun haben, oder (vielleicht) ausführen in einer Subshell. z.

find ... 2>/dev/null | xargs grep ... 2>/dev/null

Hier einen Verweis auf einige Dokumentation auf bash Umleitung. Es sei denn, Sie csh verwenden, sollte dies für die meisten arbeiten.

Andere Tipps

Das Options-Flag grep es wird diese Nachrichten für den Befehl grep unterdrücken

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top