私が理解しているように、-depth
コマンドのオプションは、find
ツリー構造の深さ優先トラバーサル中にディレクトリを終了したときに指定されたタスクが発生するようにします(おそらく私が間違って理解している可能性があります)。
オプションが指定されていない場合、通常は深度-depth
優先探索が完了する前に作業を実行しますか、またはディレクトリの幅優先探索を実行し、通常は作業を最初に実行しますか?
答え1
find
-depth
指定の有無にかかわらず、深さ優先戦略が使用されます(幅優先戦略とは反対)。-depth
子ディレクトリだけが親ディレクトリの前に処理されることが保証されます。
簡単な例:
mkdir -p a/{1,2,3} b c
find .
生産する
.
./a
./a/2
./a/1
./a/3
./b
./c
しかし、
find . -depth
生産する
./a/2
./a/1
./a/3
./a
./b
./c
.
幅優先検索が必要な場合は、次のものを使用できます。bfs
これは幅優先実装ですfind
。