Recursos do shell, como expansão do nome do caminho ( *
, ?
), listas de comandos ( ;
, &&
, ||
), redirecionamento ( <
, >
, |
,) não são implementados pelo supervisord que apenas divide o comando em um array de strings de argumentos.
O bash -c
pode ser apenas uma ajuda para usuários novatos que podem ser tentados a usar tais recursos no comando. Por exemplo, evita a surpresa que
command=echo foo > /tmp/bar
envia foo > /tmp/bar
em vez de escrever foo
para /tmp/bar
.
-c
tem pouco a ver com variáveis. Quaisquer argumentos adicionais para o bash só estarão disponíveis como argumentos de script $0
, $1
, etc. no comando, mas esse recurso raramente tem uso. Por exemplo, bash -c 'echo $0 $0' foo
outputs foo foo
.