Я просто быстро попробовал это, когда искал в Google хороший ответ. Я более склонен к Regex, чем Bash, но это также работает для подкаталогов. Я не думаю, что включает в себя файлы без расширений:
ls -R | egrep '(\.\w+)$' -o | sort | uniq -c | sort -r