¿Cómo cambiar el enfoque a la aplicación en función de su PID de CLI?

3

Comencé a usar Firefox con varios perfiles, sin embargo, a veces estoy perdido y no puedo encontrar la ventana correcta.

Por ejemplo, dado que tengo el proceso con PID 1234 como:

$ ps wuax | grep -w Foo
kenorb           1234  /Applications/Firefox.app/Contents/MacOS/firefox -P Foo

¿Cómo puedo cambiar el enfoque actual a él en función de su PID?

    
pregunta kenorb 18.02.2018 - 15:48

1 respuesta

2

Aquí hay un ejemplo AppleScript código que abrirá las ventanas del unix id (PID) para el proceso que muestra Foo en su comando al frente:

set thisUnixID to (do shell script "ps wx | awk '/[F]oo/{print $1}'") as integer

tell application "System Events"
    set frontmost of every process whose unix id is thisUnixID to true
end tell

Tenga en cuenta que este código de ejemplo se puede volver a trabajar para solicitar un nombre de perfil e ir desde allí y se puede hacer como una aplicación AppleScript o un script bash según sus requisitos.

También tenga en cuenta que las corchetes alrededor del primer carácter de "Foo" están ahí, por lo que solo devuelve el PID para el objetivo apropiado, no por ejemplo. el PID de awk buscando "Foo" sin las llaves cuadradas.

Aquí está la versión ligeramente modificada que encuentra la ventana de Firefox con un nombre de perfil específico:

#!/usr/bin/env osascript
set PID to (do shell script "pgrep -f -- 'firefox -P Foo'") as integer

tell application "System Events"
  set frontmost of every process whose unix id is PID to true
end tell
    
respondido por el user3439894 18.02.2018 - 18:18

Lea otras preguntas en las etiquetas