web-dev-qa-db-fra.com

Il semble qu'il n'y ait pas de PID pour la fenêtre. Comment tuez-vous cette fenêtre sans PID?

J'essaie d'obtenir le PID d'une fenêtre "A: Fluid Flow (Fluent) - Meshing" à droite de cette image . Les commandes que j'ai trouvées sont ci-dessous. Ils ne fonctionnent pas après que j'ai cliqué sur la fenêtre. Je souhaite supprimer la fenêtre latérale droite qui provient de la fenêtre gauche "Test02 - Workbench" sans tuer les deux fenêtres. La fenêtre de droite est obtenue en double-cliquant sur le maillage situé entre Géométrie et Configuration de la fenêtre de droite. Cependant, je peux obtenir le PID de la fenêtre de gauche.

$ xprop _NET_WM_PID
_NET_WM_PID:  not found.

$ xprop _NET_WM_PID | cut -d' ' -f3
not

$ xprop
_NET_WM_ICON_GEOMETRY(CARDINAL) = 5, 694, 54, 54
_NET_FRAME_EXTENTS(CARDINAL) = 0, 0, 28, 0
WM_STATE(WM_STATE):
        window state: Normal
        icon window: 0x0
_NET_WM_DESKTOP(CARDINAL) = 0
_NET_WM_STATE(ATOM) = _NET_WM_STATE_MAXIMIZED_VERT
WM_CLASS(STRING) = "Ansyswbu.exe", "MainWin"
WM_NORMAL_HINTS(WM_SIZE_HINTS):
 specified location: 706, 52
        program specified location: 706, 52
        user specified size: 660 by 716
        program specified size: 660 by 716
        program specified minimum size: 2 by 2
        program specified maximum size: 1356 by 734
WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW, WM_TAKE_FOCUS, WM_STATE, WM_CLASS, _MOTIF_WM_MESSAGES
WM_HINTS(WM_HINTS):
        Client accepts input or input focus: True
        Initial state is Normal State.
        bitmap id # to use for icon: 0x4600122
        bitmap id # of mask for icon: 0x4600120
_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE, _NET_WM_ACTION_STICK, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_CLOSE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_ABOVE, _NET_WM_ACTION_BELOW
WM_ICON_NAME(STRING) = "A : Fluid Flow (Fluent) - Meshing [ANSYS Academic Research]"
WM_NAME(STRING) = "A : Fluid Flow (Fluent) - Meshing [ANSYS Academic Research]"
_MW_WINDOW_HANDLE_0027d74c_v2(STRING) = "\002", "\003\013"


$ wmctrl -mlpx
...
0x0380000f  0 5159   .                        mymachine   Test02 - Workbench
0x046000a4  0 0      Ansyswbu.exe.MainWin     N/A         A : Fluid Flow        (Fluent) - Meshing [ANSYS Academic Research]
...

Avec la dernière commande wmctrl -mlpx, il semble que le PID soit 5159 pour la fenêtre de gauche et 0 pour la fenêtre de droite. Comment pourrait-il être 0?

Merci.

5
MisterX

Cela fonctionne avec wmctrl et l'identifiant de fenêtre.

Tout d’abord, installez wmctrl si vous ne l’avez pas:

Sudo apt-get install wmctrl

Deuxièmement, trouvez l'identifiant de la fenêtre avec:

$ wmctrl -mlpx
...
0x046000a4  0 0      Ansyswbu.exe.MainWin    N/A    A : Fluid Flow (Fluent) - Meshing [ANSYS Academic Research]
...

Enfin, tuez la bête avec un PID nul wmctrl :

wmctrl -ic 0x046000a4
4
MisterX

La commande que vous voulez est:

xprop | grep _NET_WM_PID
1
waltinator