Você pode usar a substituição do comando bash $(command)
assim:
$(command1 ; command2) &
Observe que stdin e stdout ainda estão vinculados ao processo pai e redirecionar pelo menos o stdout pode ser complicado. Então, alternativamente, você pode encadear os comandos em uma única linha e passar a string para o bash
comando para gerar um novo processo que manipulará a execução.
bash -c "command1 ; command2" &
Isso é especialmente útil em um script bash quando você precisa executar vários comandos em segundo plano.
Essas duas instruções devem ser equivalentes. Um processo bash é gerado nos dois casos para manipular o comando (cadeia de comandos) e o&
no final desanexa a execução.
Desta vez, você pode adicionar &>/dev/null
antes do &
final do comando para redirecionar pelo menos o stdout e evitar a saída no stdout do processo pai. Algo como:
bash -c "command1 ; command2" &>/dev/null &
()
para cercar o comando.