Eu sei que podemos obter o pid da janela atual com xdotool
o comando:
xdotool getactivewindow
No entanto, isso ajuda apenas nas janelas abertas no momento... Gostaria de encontrar uma maneira de obter o pid de uma janela que estou abrindo no momento, algo como o seguinte:
command-to-get-pid-of-process-that-is-opening-now "$(firefox https://www.google.com)"
Eu sei que poderia usar sleep
e esperar um tempo aleatório para o processo abrir e depois usar o xdotool getactivewindow
. Mas isso não parece uma solução ideal. Como posso obter o pid de uma janela que estou abrindo?
Responder1
firefox https://www.google.com & MYPID=$!
armazenará o pid do processo que você acabou de iniciar em uma variável MYPID
.
No entanto, não prenda a respiração.
Novas janelas não estão necessariamente associadas ao comando que você executou. No caso do Firefox, o comando pode eventualmente se comunicar com uma instância já em execução. O processo para o qual você determinou o pid desaparecerá em breve.
Você pode querer, em uma nova pergunta, perguntar sobre o que você realmente deseja alcançar (Problema X). Outras abordagens além de encontrar o pid de uma janela que você está prestes a abrir (Problema Y, a pergunta atual) pode ser necessária.