No Linux, UNIX e sistemas operacionais relacionados, .
indica o diretório atual. Como você deseja executar um arquivo no diretório atual e esse diretório não está no seu $PATH
, você precisa do ./
bit para informar ao shell onde está o executável. Então, ./foo
significa executar o executável chamado foo
que está nesse diretório.
Você pode usar type
ou which
para obter o caminho completo de todos os comandos encontrados em seu $PATH
.