Я думаю, что '$PATH_TO_SOMEWHERE'
это что-то вроде '<directory>/*'
.
В этом случае я бы изменил код на:
find <directory> -maxdepth 1 -type d -exec ... \;
find <directory> -maxdepth 1 -type f -name "*.txt" -exec ... \;
Если вы хотите сделать что-то более сложное с именами каталогов и текстовых файлов, вы можете:
find <directory> -maxdepth 1 -type d | while read dir; do echo $dir; ...; done
find <directory> -maxdepth 1 -type f -name "*.txt" | while read txtfile; do echo $txtfile; ...; done
Если в именах файлов есть пробелы, вы можете:
find <directory> -maxdepth 1 -type d | xargs ...
find <directory> -maxdepth 1 -type f -name "*.txt" | xargs ...