Sur ma machine principale, j'ai un bureau Ubuntu ouvert et connecté. Je me connecte ensuite également à cette machine à partir d'un ordinateur distant, en utilisant X2go qui crée une nouvelle session X. J'ai un fichier libreoffice ouvert sur la session d'origine . Je veux enregistrer ce fichier et le fermer - mais depuis la machine distante! (Les deux sessions ont le même utilisateur connecté; je peux sudo si nécessaire)
J'ai essayé d'utiliser xdotool search
mais cela ne trouve pas la fenêtre. Y a-t-il un moyen de faire ce que je veux de cette deuxième session? Je peux voir le processus avec ps -A
Je peux même voir le fichier ouvert avec lsof
! Comment puis-je faire une "sauvegarde et fermeture" dessus?
DISPLAY=:0
(ou tout affichage sur lequel votre autre compte se trouve), puis lancez le serveur et accédez-y depuis le client. Mais cela pourrait être excessif. LibreOffice peut avoir un protocole de message - je ne le connais pas très bien car j'utilise Google Docs ou des fichiers texte en clair dans Vim (y compris LaTex) ...DISPLAY:1
puis démarrez n'importe quel programme X (xeyes pour le test) et fonctionneriez sous le VNC. Il en va de même pour les serveurs vnc distants. SSH dans la machine, puis exécutez l'exportation simple AFFICHER: 1 avant de l'utiliser.Réponses:
En supposant la configuration par défaut, xdpyinfo sur "original" afficherait un affichage de ": 0.0", par exemple
Si votre variable d'environnement DISPLAY sur "x2go" est ": 1.0", il devrait en être ainsi.
Depuis un terminal sur "x2go" Essayez de trouver l'id de la fenêtre:
Il est possible que le contrôle d'accès soit configuré de manière à ce qu'il ne fonctionne pas, mais je pense qu'il devrait l'être si vous êtes le même ID utilisateur sur le même hôte (c'est-à-dire l'accès à ~ / .Xauthority). Vérifiez la sortie "xauth list" si aucun accès.
Si cela fonctionne, utilisez votre outil préféré pour le contrôler. Ajoutez "-int" à xwininfo ci-dessus pour imprimer le windowid en décimal si votre outil l'exige de cette façon, xdotool ne fait pas:
ou vous pourriez avoir plus de chance avec ceux-ci au lieu de "ctrl + s" / "ctrl + q"
Vous pourriez avoir besoin de "alt +" au lieu de "meta +", j'ai des mappages méta / alt / super non standard. meta fonctionne pour moi, testé à l'aide d'un Xnest. Je suppose que la disposition et les accélérateurs du menu anglais sont inchangés.
Il est possible qu'il y ait une fenêtre contextuelle sur votre chemin, auquel cas cela vaut la peine d'essayer:
plusieurs fois, puis réessayez d'enregistrer et de fermer. Rappelez-vous que xdotool est pointilleux sur la casse exacte des noms "clés".
Vous devriez pouvoir essayer tout cela en démarrant libreoffice sur x2go et en ne modifiant PAS votre DISPLAY. Vous devez enregistrer les commandes dans un fichier de script shell afin que les changements de focus ne vous dérangent pas.
lsof devrait montrer que le fichier n'est plus ouvert s'il fonctionnait :-)
la source
xdotool key "Escape"
sur les noms mais je n'ai pas essayé les noms longs: DIl semble qu'il y ait quelques exigences possibles. apparemment, l'hôte doit être dans le fichier xhosts (il a été marqué comme réponse) et la valeur DISPLAY appropriée exportée. Cet article ici devrait vous aider à le faire comme vous le vouliez, permettant à xdotool de trouver une fenêtre x11 distante .
la source