Do manual :
If arguments remain after option processing, and neither the
-c
nor the-s
option has been supplied, the first argument is assumed to be the name of a file containing shell commands.
Portanto bash date
significa "leia o arquivo date
e execute os comandos do shell que ele contém". Supondo que não exista nenhum arquivo date
no diretório atual, bash
procura o caminho e encontra /bin/date
, que é um binário em vez de um script de shell, daí o erro.