Primeiro de tudo, o nome do comando (bem, shell builtin) é source
. A menos que tenha escrito um script chamado source
e colocado em /
, você deseja source
e não /source
.
A próxima questão é que cron
geralmente usa o que você tem como /bin/sh
e source
é uma base (ou outras camadas mais complexas). O comando compatível com POSIX portátil para obter um arquivo é .
. Então, tente isso em vez de source
:
*/3 * * * * root /usr/bin/env bash & . /env & aws s3 ls >> /test 2>&1
Além disso, eu não entendo muito bem o que isso deveria estar fazendo. Qual é o ponto de começar uma sessão bash e enviá-lo para o fundo? Se você quiser usar o bash para executar os comandos subseqüentes, será necessário:
*/3 * * * * root /usr/bin/env bash -c '. /env && aws s3 ls' >> /test 2>&1
Eu também alterei o &
para &&
, já que o fornecimento no plano de fundo é inútil, até onde eu posso ver.