ディレクトリ階層があります。一部のディレクトリにはファイルがなく、他のディレクトリのみが含まれています。一部にはファイルが含まれます。
たとえば、
- movies
- 2022
- action
- movie.mp4
- another-movie.mp4
- 2023
- drama
- movie2.mp4
- 2024
- thriller
- movie3.mp4
- movie4.mp4
find
私はこの結果を与えるコマンドが欲しい:
/movies/2022/action
/movies/2023/drama
/movies/2024
/movies/2024/thriller
私は読んだこれそしてこれそしてこれfind
しかし、コマンドを見つけることはできません。
修正する: ディレクトリにはファイルとディレクトリを含めることができます。質問を更新しました。たとえば、2024
映画とは異なるディレクトリがあります。結果には目次を/movies/2024
含める必要があります。/movies/2024/thriller
ベストアンサー1
ファイル形式の検索定期的な含まれているディレクトリを印刷します。リストは、各ディレクトリが一度だけリストされるように一意です。 GNUシステムでは、改行文字を含むファイルパスがある場合でも、これを確実に行うことができます。
find /path -type f -print0 |
LC_ALL=C sed -z 's!/[^/]*$!!' |
LC_ALL=C sort -zu |
tr '\0' '\n'
標準では、ファイルパスに改行文字が含まれていないと仮定しています。
find /path -type f -print |
LC_ALL=C sed 's!/[^/]*$!!' |
LC_ALL=C sort -u