Eu posso reproduzi-lo se eu criar um diretório chamado crash
em qualquer um dos diretórios em $path
:
$ mkdir -p ~/bin/crash
$ path+=(~/bin)
$ crash
zsh: permission denied: crash
$ type crasn
crasn not found
O permission denied
seria porque zsh
tenta executar esse diretório (e não há outro comando crash
potential para procurar no restante de $path
). Agora que type
não reporta esse diretório quando zsh
tenta executá-lo quando você digita crash
pode ser visto como um bug.
Tente ls -ld -- $^path/crash(N/)
para confirmar.
dash
, tcsh
(com which
) e fish
têm o mesmo problema. ksh93
e mksh
têm uma inconsistência semelhante, mas pelo menos a mensagem de erro é mais útil:
$ ksh -c crash
ksh: crash: cannot execute [Is a directory]
$ ksh -c 'type crash'
ksh: whence: crash: not found