O shell faz globbing, não find . Quando você digita um comando que inclui um glob sem aspas como .b* ou *.e* , o shell expandirá isso para você. Isso acontece antes que find o veja.
Você provavelmente tem arquivos como .bashrc , .bash_history etc. no diretório $HOME . Portanto, quando executado a partir de $HOME , seu comando se transformará em find ... -execdir ls -d .bashrc .bash_history ... \; . Quando executado a partir de outros locais, o .b* glob não corresponde a nada, portanto é transmitido. Isso ainda não funciona, pois é o shell que faz globbing, não find -exec . Se você quisesse que o glob fosse expandido para o -exec , você precisaria invocar um shell para fazer isso:
find ... -execdir sh -c 'echo globs: *' \;