./file
é funcionalmente equivalente a file
em todas as circunstâncias, exceto uma.
A exceção é que um comando ou script sem diretório faz com que o shell pesquise todos os diretórios na variável PATH
, que geralmente não inclui o diretório atual.
Portanto, para executar um executável a partir do diretório atual, você precisa especificar um caminho e ./
é a maneira mais simples de fazer isso.
No Windows, o equivalente .\
é desnecessário porque o diretório atual é pesquisado implicitamente.