GNU/Linux >> Belajar Linux >  >> Linux

Redirect stderr ke /dev/null

Pindahkan saja pengalihan ke perintah pertama, yaitu

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

Atau Anda dapat menyertakan semuanya dalam tanda kurung:

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

Untuk mengarahkan ulang stderr ke /dev/null gunakan:

some_cmd 2>/dev/null

Anda tidak memerlukan xargs di sini. (Dan Anda tidak menginginkannya! karena melakukan pemisahan kata)

Gunakan opsi exec find:

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

Untuk menekan pesan kesalahan gunakan -s pilihan grep :

Dari man grep :

-s, --no-messagesTekan pesan kesalahan tentang file yang tidak ada atau tidak dapat dibaca.

yang memberi Anda:

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

Linux
  1. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  2. Seberapa Portabel /dev/stdin, /dev/stdout Dan /dev/stderr?

  3. Mengapa Mengarahkan Stderr Ke /dev/null Dilakukan Dengan Cara Ini?

  1. Shell:redirect stdout ke /dev/null dan stderr ke stdout

  2. Kapan saya harus menggunakan /dev/shm/ dan kapan saya harus menggunakan /tmp/?

  3. kernel:menonaktifkan /dev/kmem dan /dev/mem

  1. Linux:Perbedaan Antara /dev/console , /dev/tty Dan /dev/tty0?

  2. Kapan Menggunakan /dev/random Vs /dev/urandom?

  3. Mengapa < atau > diperlukan untuk menggunakan /dev/tcp