Como obter o id do processo de um comando

1

Estamos executando algum comando no modo batch. Precisamos fazer mais algumas tarefas depois que o comando existente estiver pronto, então precisamos esperar até que esse comando seja feito.

Por exemplo:

bsub -q gui -I calibre -drc -batch
wait 

Você pode, por favor, dizer como podemos obter o id do processo deste trabalho mencionado no comando wait ou alguma outra alternativa para esperar até que o comando existente termine?

    
por yisha 25.09.2014 / 08:11

4 respostas

2

Tente isso

bsub -q gui -I calibre -drc -batch & pid=$!
wait ${pid}

Aqui pid é uma variável. Você pode nomear tudo.

    
por 25.09.2014 / 08:40
0

O arquivo wait o comando já deve fazer o truque - ele deve aguardar, até que bsub seja concluído, embora bsub seja executado em o fundo. Mas se você não quiser usar wait , você pode obter o PID com, por exemplo, pgrep bsub ou ps -eo pid,comm | grep bsub e, em seguida, você pode escrever sua própria rotina "esperar até terminar".

    
por 25.09.2014 / 08:38
0

Nós tentamos o comando superior pid = $! aguarde $ {pid} mas estamos com erro

"espera muitos argumentos"

Por favor, olhe para ele e dê solução, se possível.

Obrigado Yisha

    
por 26.09.2014 / 06:25
0

Nós tentamos o comando upper também pgrep bsub e esperamos pgrep bsub ainda estamos recebendo erro

"espera muitos argumentos"

Por favor, olhe para ele e dê solução, se possível.

Obrigado, Yisha

    
por 26.09.2014 / 06:32