GNU/Linux >> Znalost Linux >  >> Linux

Přesměrujte stderr na /dev/null

Stačí přesunout přesměrování na první příkaz, tj.

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

Nebo můžete vše uzavřít do závorek:

(find ... | xargs ...) 2>/dev/null

Chcete-li přesměrovat stderr na /dev/null, použijte:

some_cmd 2>/dev/null

Nepotřebujete xargs tady. (A vy to nechcete! protože provádí dělení slov)

Použijte možnost find's exec:

find . -type f -name "*.txt" -exec grep -li needle {} +

Pro potlačení chybových zpráv použijte -s možnost grep :

Od man grep :

-s, --no-messagesPotlačit chybové zprávy o neexistujících nebo nečitelných souborech.

což vám dává:

find . -type f -name "*.txt" -exec grep -lis needle {} +

Linux
  1. Jak kódovat base64 /dev/random nebo /dev/urandom?

  2. Shell:přesměrujte stdout na /dev/null a stderr na stdout

  3. Kdy mám použít /dev/shm/ a kdy /tmp/?

  1. DD z /dev/zero do /dev/null...co se vlastně stane

  2. Linux:Rozdíl mezi /dev/console , /dev/tty a /dev/tty0

  3. jádro:deaktivace /dev/kmem a /dev/mem

  1. Linux:Rozdíl mezi /dev/console, /dev/tty a /dev/tty0?

  2. Jak přenosné jsou /dev/stdin, /dev/stdout a /dev/stderr?

  3. Vytvořte virtuální blokové zařízení, které zapisuje do /dev/null