ディレクトリを再帰的に検索して、隠しファイルではなく隠しディレクトリにないすべてのファイルを見つけたいと思います。ファイルを非表示にするためにデフォルトの名前除外を試してみましたが、find . -type f -not -name '.*'
まだ隠されたディレクトリで繰り返されます。
dir/
file.py
.hidden_file
.hidden_dir/
file.c
私は出力が次のようになります:
./dir/file.py
しかし、私は次のようになります。
./dir/file.py
./dir/.hidden_dir/file.c
編集:ファイルを一覧表示したいです。-type f
答え1
再帰的に使用したくないディレクトリを「持っている」必要があります。
find dir -name '.*' -prune -o -print
通常はtrueを返すため、-prune
withと一緒に使用されるため、short-circuit ORと組み合わせると、目的の隠しファイル/ディレクトリをスキップする効果が-o
あります。-print