特定のサブディレクトリを持つパスを探す

特定のサブディレクトリを持つパスを探す

ディレクトリ構造のパスを考えてみましょう。

/A/B/C/D
/A/B/C/E
/A/B/O/P

サブディレクトリCを含むすべてのパスを一覧表示するには、grepを使用して実行できますか?予想出力:

/A/B/C/D
/A/B/C/E

grepとfindを試してみましたが、これを達成できませんでした。

ベストアンサー1

ka3akの答えが動作している間、findは "-path"引数を使用するので、簡単に使用できます。

find . -type d -path "*/c/*"

-pathも少し速いようです。

[hexathos:~/test] $ time find . -regextype posix-extended -regex ".*/c/.*"
./a/b/c/d
./a/b/c/e

real    0m0,013s
user    0m0,010s
sys 0m0,000s
[hexathos:~/test] $ time find . -type d -path "*/c/*"
./a/b/c/d
./a/b/c/e

real    0m0,012s
user    0m0,007s
sys 0m0,003s

おすすめ記事