Cómo get el ID de process de un command

Estamos ejecutando algunos commands en modo por lotes. Necesitamos hacer algunas tareas más una vez que el command existente esté listo, por lo que debemos esperar hasta que este command finalice.

Por ejemplo:

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

¿Puede decirnos cómo podemos hacer que la identificación del process de este trabajo se mencione en el command de espera o alguna otra alternativa para esperar hasta que el command existente finalice?

Prueba esto

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

Aquí pid es una variable. Puedes ponerle cualquier cosa.

El command bsub ya debería funcionar: debería esperar hasta que bsub finalice, aunque bsub se ejecutará en segundo plano. Pero si no desea utilizar wait , puede get el PID con, por ejemplo, pgrep bsub o ps -eo pid,comm | grep bsub ps -eo pid,comm | grep bsub y luego puedes escribir tu propia rutina "esperar hasta terminar".

Hemos intentado el command superior pid = $! espera $ {pid} pero estamos recibiendo un error

"espere demasiados arguments"

Mírelo y brinde una solución si es posible.

Gracias, Yisha

Hemos intentado el command superior esto también pgrep bsub y luego espera pgrep bsub todavía estamos recibiendo el error

"espere demasiados arguments"

Mírelo y brinde una solución si es posible.

Gracias, Yisha