Experimente este projeto: link
você deve ser capaz de executar algo assim:
chromix with https://www.facebook.com/ close
Estou escrevendo um pequeno script bash que abre alguns aplicativos (várias janelas do Chrome entre outros), aguarda a entrada e, com a entrada correta, fecha todos os aplicativos abertos novamente.
Para finalizar os aplicativos, descobri duas maneiras diferentes:
com kill $PID
ou com wmctrl -c <WIN>
No meu caso, há várias janelas do cromo abertas (não apenas aquelas lançadas pelo script).
O título da janela de chrome muda com o URL que é visitado, então, aos meus olhos, usar wmctrl -c
não é muito útil. Além disso, se outra janela (por exemplo, uma instância do Firefox) tiver uma janela semelhante, ela também será fechada.
Isso me leva ao comando kill
. Mas não consegui descobrir como identificar o PID da janela do Google Chrome que desejo finalizar.
Eu tentei isso:
pid=$(ps | grep chromium | cut -d " " -f1 | head -n1)
if [ -n "$pid" ]
then
echo "...Closing Chromium"
kill -15 $pid
else
echo "...Chromium not found"
fi
mas fecha todas as janelas do Chromium.
Alguma ideia de como identificar a janela do Chrome que eu quero matar?
Experimente este projeto: link
você deve ser capaz de executar algo assim:
chromix with https://www.facebook.com/ close
o manual do bash diz:
$! Expands to the process ID of the most recently executed background (asynchronous) command.
Portanto, armazene todos os seus PIDs desejados diretamente após iniciar o processo de cromo. Talvez assim:
chromium & job1=$!
echo job1=$job1
#...
kill $job1
existem matrizes no bash também para listas de PIDs ...