ファイルパス名に適用された式に基づいてディレクトリ(またはファイルなど)を見つける方法[重複]

ファイルパス名に適用された式に基づいてディレクトリ(またはファイルなど)を見つける方法[重複]

ファイルパスに適用された式に基づいてディレクトリを検索または抽出しようとしています。たとえば、次のコマンドを使用しました。

find . -type d -links 2

次のディレクトリのリストを取得するには:

./foo/ABC/W
./foo/ABC/X
./foo/ABC/Y
./foo/ABC/Z
./foo/BCD/W
./foo/BCD/X
./foo/BCD/Y
./foo/BCD/Z
./foo/CDE/W
./foo/CDE/X
./foo/CDE/Y
./foo/CDE/Z
./bar/CDE/V
./bar/CDE/Q
./bar/BCD/V
./bar/BCD/Q
./bar/ABC/V
./bar/ABC/Q

このリストを取得し、「CDE」を含むファイルパスのみを抽出する方法を知りたいです。

./foo/CDE/W
./foo/CDE/X
./foo/CDE/Y
./foo/CDE/Z
./bar/CDE/V
./bar/CDE/Q

これまでに試したことは次のとおりです。試しても何も出力されません。

find . -type d -links 2 -name "CDE" -print

ベストアンサー1

$ find . -type d -links 2 -path '*CDE*'
./foo/CDE/X
./foo/CDE/Z
./foo/CDE/W
./foo/CDE/Y
./bar/CDE/Q
./bar/CDE/V

または使用

find . -type d -links 2 -path '*/CDE/*'

CDE探しているパスの中間のどこかにあるサブディレクトリの名前がわかっている場合。

おすすめ記事