Você terá que "remover" os diretórios nos quais não deseja recorrer:
find dir -name '.*' -prune -o -print
Geralmente -prune
é usado com -o
porque retorna true, então quando combinado com short-circuit OR, ele tem o efeito de pular -print
em diretórios / arquivos ocultos, o que é exatamente o que você deseja.