[O seguinte pressupõe que seu "problema de registro" não especificado estava relacionado à configuração do ambiente ausente, normalmente herdada do seu perfil.]
A opção -l
diz ao bash para ler todos os vários scripts de "perfil", a partir de /etc
e do seu diretório pessoal. Normalmente, o Bash apenas faz isso para sessões interativas (nas quais o bash é executado sem nenhum parâmetro de linha de comando).
Os scripts normais não têm nenhum negócio lendo o perfil; eles devem funcionar no ambiente que receberam. Dito isso, talvez você queira fazer isso para scripts pessoais, talvez, se eles estiverem intimamente ligados ao seu ambiente e você planeja executá-los fora de uma sessão normal.
Um crontab é um exemplo de executar um script fora de sua sessão, então sim, vá em frente!
Se o script é puramente para o uso do crontab, então adicionar -l
ao shebang é bom. Se você puder usar o script de outras maneiras, considere corrigir o problema do ambiente no próprio crontab:
0 * * * * bash -l hourly.sh