正確に8レベルの深さのファイル名を見つける方法は?

正確に8レベルの深さのファイル名を見つける方法は?

私のバックアップシステムでファイルを検索するために "find"コマンドを使用しています。特定の文字列(例:XYZ')の深さは正確に8階です。

これを実行できるfind構文はありますか?ありがとうございます。

ベストアンサー1

これらのオプションでGNUfindまたは他のソフトウェアを使用すると仮定すると、find

find . -mindepth 8 -maxdepth 8 -name '*XYZ*'

そのコマンドがない場合は、find次のバージョンのPOSIXを使用できます。

# must contain exactly 7 slashes
find . -path '*/*/*/*/*/*/*/*' -prune -name '*XYZ*'

-path '*/*/*/*/*/*/*/*'最低8レベルの深さ(少なくとも7つのスラッシュを含む、深さ0はそれ.自体、深さ1は現在のディレクトリのファイル)であるパスを選択し、その操作を-prune実行すると、find8レベルの深さのフォルダに降りるのを防ぎます。レベル9の上のものは再び見ることができません。

おすすめ記事