4 votos

Cómo cambiar el foco de la aplicación basado en su PID desde el CLI?

He empezado a utilizar Firefox con varios perfiles, sin embargo a veces estoy perdido y no encuentro la ventana de la derecha.

Por ejemplo, he dado el proceso con PID 1234, tales como:

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

¿cómo puedo cambiar el enfoque actual sobre la base de su PID?

3voto

user3439894 Puntos 5883

Aquí está un ejemplo de AppleScript código fragmento que traerá windows de la unix id (PID) para el proceso que demuestre Foo en su comando para la parte delantera:

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 puede ser revisado a fin de solicitar un nombre de perfil y a partir de ahí y se puede hacer como un AppleScript aplicación o un script de bash en función de sus requisitos.

También tenga en cuenta que los corchetes alrededor del primer carácter de "Foo" hay tan sólo devuelve el PID para el adecuado destino, no por ejemplo el PID de awk buscando "Foo" sin los corchetes.


Aquí está el slighty versión modificada que se encuentra la ventana de Firefox con el 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

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X