Quero saber se existe uma maneira de colocar o e comercial em uma variável e ainda usá-lo para enviar um processo para o plano de fundo.
Isso funciona:
BCKGRND=yes
if [ "$BCKGRND" = "yes" ]; then
sleep 5 &
else
sleep 5
fi
Mas não seria legal realizar essas cinco linhas com apenas uma? Igual a:
BCKGRND='&'
sleep 5 ${BCKGRND}
Mas isso não funciona. Se BCKGRND não estiver definido, ele funcionará - mas quando estiver definido, ele será interpretado como um literal '&' e ocorrerá um erro.
echo $!
retorna o PID