Shebang não era para ser tão flexível . Pode haver alguns casos em que ter um segundo parâmetro funcione , acho que o FreeBSD é um deles.
espera-se que o gawk e a maioria dos utilitários que acompanham o sistema operacional /usr/bin/.
Nos dias anteriores do UNIX, era comum /usr/montar sobre NFS ou alguma mídia mais barata para economizar espaço em disco local e custo por estação de trabalho. /bin/deveria ter tudo o necessário para inicializar no modo de usuário único . Como /usr/não foi montado em uma mídia confiável, /bin/incluiu utilitários suficientes para torná-la amigável o suficiente para administração geral e solução de problemas.
Isso foi herdado no Linux inicialmente, mas como o espaço em disco não é mais um problema e, na maioria dos casos, /usr/está no sistema de arquivos raiz, a tendência atual é mudar tudo /usr/bin(pelo menos no mundo do Linux). Portanto, a maioria dos utilitários instalados por uma distro deve ser encontrada lá. Mesmo o mais serviços básicos, como cp, rm, lsetc (assim, ainda não).
Em relação à escolha shebang. Tradicionalmente, isso é algo que os administradores ou usuários precisam editar de acordo com o ambiente. Pelo que todo desenvolvedor sabe, nos sistemas de outras pessoas, o intérprete pode estar em qualquer lugar do sistema de arquivos (por exemplo /usr/local/bin, /opt/gawk-4.0.1/bin). Os scripts empacotados corretamente (rpm, deb etc) vêm com uma dependência de um pacote de distribuição (por exemplo, o intérprete tem um local conhecido) ou um script de configuração que configura o hashbang apropriado durante a instalação.
-f? Não é/bin/gawksuficiente? Além disso, isso pode ser relevante.