Как перечислить непустые подкаталоги в Linux? - PullRequest
26 голосов
/ 03 мая 2009

У меня есть каталог, содержащий несколько подкаталогов. Я хочу перечислить только те подкаталоги, которые содержат хотя бы один файл. Как я могу это сделать?

Ответы [ 3 ]

52 голосов
/ 03 мая 2009
 find . -mindepth 1 -maxdepth 1 -not -empty -type d

даст вам все непустые каталоги. Если вы хотите исключить каталоги, которые содержат только другие каталоги (но не файлы), один из других ответов может быть лучше ...

7 голосов
/ 03 мая 2009
find . -type f -print0 | xargs -0 -n 1 dirname | sort -u
3 голосов
/ 03 мая 2009

Как насчет:

find /nominated/directory -type f |
sed 's%/[^/]*$%% |
sort -u

Найти файлы - удалить часть имени файла - отсортировать однозначно.

В нем не будут перечислены подкаталоги, которые содержат только другие подкаталоги.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...