特定の名前のディレクトリを見つける方法は?ただし、そのディレクトリが特定の名前を持つ別のディレクトリ内にある場合にのみ可能ですか?たとえば、次のようなディレクトリ構造がある場合
a
├── b
│ └── e
├── c
│ └── e
└── d
「e」ディレクトリを探したいが、そのディレクトリが「c」というディレクトリにある場合にのみ可能です。可能であれば、grepなしでfindコマンドのみを使用してください。
ベストアンサー1
GNUを使用してフルパスから一致を検索しますfind
。-path
$ find . -path '*/c/e'
./a/c/e
e
これは、名前付きディレクトリ内のすべてのファイルまたはディレクトリと一致しますc
。
find
または、GNUまたは他のサポートされているものがない場合は、-path
次のことができます。
$ find . -type d -name c -exec find {} -name e \;
./a/c/e
ここでの秘密は、まずすべてのc/
ディレクトリを探し、次にそのディレクトリに名前を付けますe
。