comm -23 <(find . -type d ! -empty | sort -u) <(find . -type f -printf '%h\n' | sort -u)
Это список непустых папок (по крайней мере, одна вещь в нем), за исключением тех, которые содержат какие-либо файлы. Если вы также хотите исключить такие вещи, как каналы и символические ссылки, вы можете использовать ! -type d
вместо -type f
. Это нельзя сделать одним оператором поиска, так как поиск не может соответствовать по сложным критериям содержимого (это не XPath).