gnome-terminal 可以打开多个窗口,并且一个窗口中可能有多个选项卡。
我想激活一个 gnome-terminal 窗口,该窗口的一个选项卡中运行着一个 bash,因为该 bash 的 CWD 会阻止我的便携式磁盘正确弹出。
我通过 lsof 发现 bash pid 是 25938。
在我的示例中,我发现有 5 个窗口,8 个选项卡。问题是如何确定 25938 在哪个窗口中,当然是通过 cmd。
$ echo $$
24674
$ ps --ppid $(pgrep gnome-terminal)
PID TTY TIME CMD
6080 pts/0 00:00:00 bash
6742 pts/1 00:00:00 bash
20340 pts/5 00:00:00 bash
23354 pts/7 00:00:00 bash
24674 pts/8 00:00:00 bash
25938 pts/9 00:00:00 bash
30028 pts/12 00:00:00 bash
30492 pts/13 00:00:00 bash
$ wmctrl -lp | grep "$(pidof gnome-terminal-server)"
0x02800006 0 6070 bill me@bill: ~/m
0x0281016b 0 6070 bill me@bill: ~/c
0x02824e87 0 6070 bill me@bill: /c
0x02827a5d 0 6070 bill me@bill: ~/b
0x0282bc75 0 6070 bill me@bill: ~/a