cmd1 &
cmd1_pid=$!
sleep 10
cmd2
sleep 10
cmd2
wait $cmd1_pid
explicação: cmd1 &
lança um processo no fundo do shell. a variável $!
contém o pid desse processo em segundo plano. o shell continua processando os outros cmds. sleep 10
significa 'aguarde um pouco'. OP apenas quer acionar cmd2
em ordem linear para que a parte seja trivial. no final do trecho de script, apenas esperamos que cmd1
termine (pode até ser concluído antes) com wait $cmd1_pid
.