Você não precisa usar uma extensão de nome de arquivo, mas a permissão de arquivo precisa ser definida como executável para o usuário que deve ser capaz de executá-lo (a menos que você crie um arquivo no shell). Veja man chmod
.
Usando um você pode dizer qual interpretador usar para executar um script.