Sé que podemos obtener el pid de la ventana actual con xdotool
el comando:
xdotool getactivewindow
Sin embargo, eso sólo ayuda con las ventanas abiertas actualmente... Me gustaría encontrar una manera de obtener el pid de una ventana que estoy abriendo actualmente, algo como lo siguiente:
command-to-get-pid-of-process-that-is-opening-now "$(firefox https://www.google.com)"
Sé que podría usar sleep
y esperar un tiempo aleatorio para que se abra el proceso y luego usarlo xdotool getactivewindow
. Pero esa no parece una solución ideal. ¿Cómo puedo obtener el pid de una ventana que recién estoy abriendo?
Respuesta1
firefox https://www.google.com & MYPID=$!
almacenará el pid del proceso que acaba de iniciar en una variable MYPID
.
Sin embargo, no contenga la respiración.
Las ventanas nuevas no están necesariamente asociadas con el comando que ejecutó. En el caso de Firefox, el comando puede llegar a comunicarse con una instancia que ya se está ejecutando. El proceso para el cual determinó el pid pronto desaparecerá.
Es posible que desees, en una nueva pregunta, preguntar qué es lo que realmente deseas lograr (Problema X). Otros enfoques además de encontrar el pid de una ventana que está a punto de iniciar (Problema Y, la pregunta actual) puede ser necesario.