findコマンドを使用する際に、許可されていないスパムを回避する


21

私はしばしば次の構文でファイルを見つけようとします:

find . -name "filetofind"

ただし、通常は、許可が拒否されたフォルダーに関する行またはエラー報告(許可が拒否された)と同じ数になります。エラー出力からsudoまたは高度なgrepを使用する以外に、このスパムを回避する他の方法はありますか?



回答:


27

試してみる

find . -name "filetofind" 2>/dev/null

これstderrにより、「Access denied」エラーを含むすべてのエラーのレポートに使用される出力ストリームがnullデバイスにリダイレクトされます。


ありがとう、魅力のように動作します:)同じことをするエイリアスを作成せずにデフォルトオプションにする簡単な方法はないと思います。
user40167

いいえ、これはシェルの設計によるものです。
ホワイトクォーク


3

他のエラーを表示したいが、「permission denied」という名前のファイルがない場合、これは「より良い」動作になります。

find . -name "filetofind" 2>&1 | grep -v 'permission denied' 

反転オプションを使用して、出力をgrepにリダイレクトします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.