検索から.Libraryディレクトリを除外

検索から.Libraryディレクトリを除外

除外する方法をいくつか試しました。。図書館私のホームディレクトリで何かを見つけようとすると、ディレクトリが表示されますが、findとにかく多くの行が印刷されます。「許可が拒否されました」~から図書館目次。

間違い

それで作ったSudoそしてからしかし、何も役に立ちません。私は-prune、、-not -pathそして次を使ってみましたgrep -v

find . -name "*kate*" ! -path /Users/yves/Library
find . -name "*kate*" -path "*Library*" -prune -o -print
find . -name "*kate*" -not -path "./Library/*"
find . -name "*kate*" | grep -v Library

私は何が間違っていましたか?

ベストアンサー1

現在の作業ディレクトリ内のディレクトリをfind繰り返したくないようです。この場合、次のようになります。Library

find . -path ./Library -prune -o -name '*kate*' -print

Library現在作業ディレクトリ(下.)にあるディレクトリだけでなく、整理したいディレクトリの場合:

find . -name Library -prune -o -name '*kate*' -print

これにより、! -path './Library/*'findはパスがパターンに一致するファイルを選択しないように指示しますが、ディレクトリとそのサブディレクトリを参照しようとするfind試みを中断しません。ディレクトリツリーのナビゲーション方法に./Library影響を与える唯一の述語は非標準述語です(広くサポートされていますが)。find-prune-maxdepth

-depth-delete(そして暗黙的に非標準-depth)は、巡回順序に影響を与え(該当する四半期前に出る)、-prune無効化を引き起こします。-followオプションで置き換えられたものは、ディレクトリにドロップされたシンボリックリンクを-L表し、ナビゲーションにも影響します。find

おすすめ記事