私はよく次の構文でファイルを見つけようとします:
find . -name "filetofind"
ただし、通常は、アクセス許可が拒否されたフォルダーに関する行数またはエラーレポート(アクセス許可が拒否されました)になります。エラー出力からSudoまたは高度なgreppingを使用する以外にこのスパムを回避する方法はありますか?
試す
find . -name "filetofind" 2>/dev/null
これはstderr
出力ストリームをリダイレクトし、「アクセス拒否」エラーを含むすべてのエラーをnullデバイスに報告するために使用されます。
-perm
述語と-Prune
述語を使用して、読み取り不可能なディレクトリに移動しないようにすることもできます(「 」も参照)検索プログラムから「許可が拒否された」印刷出力ステートメントを削除するには-UnixおよびLinuxスタック交換 ):
find . -type d ! -perm -g+r,u+r,o+r -Prune -o -name "filetofind" -print
他のエラーを表示したいが、「許可が拒否されました」という名前のファイルがない場合は、これは「より適切に」機能します。
find . -name "filetofind" 2>&1 | grep -v 'permission denied'
反転オプションを使用して出力をgrepにリダイレクトします。