find コマンドからディレクトリを除外する

find コマンドからディレクトリを除外する

特定のファイルを検索するときにディレクトリを除外する方法を学びたいと思います。

私はWSL2を使用しているので、ファイルシステム全体を検索しないように/ mnt /フォルダを除外したいと思います。

私はできます:

find . -path './mnt' -prune -o -print

/mnt/フォルダを除くすべてのディレクトリとファイルを印刷しますが、それを正しい構文と組み合わせて特定のファイルを見つけるのに苦労しています。

find -name example.txt

ベストアンサー1

find . -path ./mnt -prune -o -name example.txt -print

これは次の略語です。

find . '(' -path ./mnt -a -prune ')' -o '(' -name example.txt -a -print ')'

AND(、省略した場合は暗黙的)は-aOR()よりも優先順位が高くなります。-o他の多くの言語

または:

find . ! '(' -path ./mnt -prune ')' -name example.txt

これは次の略語です。

find . '(' ! '(' -path ./mnt -a -prune ')' -a -name example.txt ')' -a -print

-printないため、デフォルトの動作行動式の述語は else です。

おすすめ記事