Switch to an application using its PID

6,601

The first two examples will activate the first listed Firefox window, based on its Title. Firefox always ends its Title-bar with "Mozilla Firefox"... "listed" means: as listed by wmctrl querying X. The first example uses a fuzzy match for the title.

wmctrl -a "Mozilla Firefox"

Or, to get the title more specifically:

wmctrl -Fa "$(wmctrl -l | sed -rn 's/^([^ ]+ +){3}(.*Mozilla Firefox)$/\2/p')"

If you know the PID of the process behind a window, you can use this command:

wmctrl -ia $(wmctrl -lp | awk -vpid=$PID '$3==pid {print $1; exit}') 
Share:
6,601

Related videos on Youtube

Omid
Author by

Omid

Updated on September 18, 2022

Comments

  • Omid
    Omid over 1 year

    I'm using Gnome. In vim, I want to map a key to switch to Firefox. I know that I should use bash commands (a command in form of !...). Is it possible to switch to an application using its PID?

    • bahamat
      bahamat over 11 years
      So, in X terms, you want to raise and focus a window from a shell?
    • sunnysideup
      sunnysideup over 11 years
      You probably need to get the x window id from the pid and send a _NET_ACTIVE_WINDOW message afterwards