Di mesin utama saya, saya memiliki desktop Ubuntu yang terbuka dan masuk. Saya kemudian juga masuk ke mesin ini dari komputer jarak jauh, menggunakan X2go yang menciptakan sesi-X baru. Saya memiliki file libreoffice terbuka pada sesi asli . Saya ingin menyimpan file ini dan menutupnya - tetapi dari mesin jarak jauh! (Kedua sesi memiliki pengguna yang sama masuk; saya bisa sudo jika diperlukan)
Saya sudah mencoba menggunakan xdotool search
tetapi ini gagal menemukan jendelanya. Apakah ada cara untuk melakukan apa yang saya inginkan dari sesi kedua ini? Saya dapat melihat prosesnya dengan ps -A
saya bahkan dapat melihat file yang terbuka dengannya lsof
! Bagaimana saya bisa melakukan "save-and-close" di atasnya?
DISPLAY=:0
(atau tampilan apa pun yang terjadi dengan akun lain Anda) dan kemudian luncurkan server dan dapatkan dari klien. Tapi itu mungkin berlebihan. LibreOffice mungkin memiliki protokol pesan - Saya tidak terlalu mengenalnya karena saya menggunakan Google Documents atau file teks biasa di Vim (termasuk LaTex) ...DISPLAY:1
kemudian jalankan program X (xeyes untuk tes) dan akan berjalan di bawah VNC. Hal yang sama berlaku untuk vncservers jarak jauh. SSH ke mesin lalu jalankan DISPLAY ekspor sederhana: 1 sebelum Anda gunakan.Jawaban:
Dengan asumsi konfigurasi default, xdpyinfo pada "asli" akan menampilkan tampilan ": 0,0", misalnya
Jika variabel lingkungan DISPLAY Anda pada "x2go" adalah ": 1.0" maka seharusnya demikian.
Dari terminal di "x2go" Cobalah untuk menemukan id-jendela:
Ada kemungkinan bahwa kontrol akses diatur sehingga tidak akan berfungsi, tetapi saya pikir itu harus jika Anda adalah userid yang sama pada host yang sama (yaitu akses ke ~ / .Xauthority). Periksa output "daftar xauth" jika tidak ada akses.
Jika berhasil, gunakan alat favorit Anda untuk mengontrolnya. Tambahkan "-int" ke xwininfo di atas untuk mencetak windowid dalam desimal jika alat Anda mengharuskannya, xdotool tidak:
atau Anda mungkin lebih beruntung dengan ini daripada "ctrl + s" / "ctrl + q"
Anda mungkin perlu "alt +" bukannya "meta +", saya memiliki pemetaan meta / alt / super non-standar. meta bekerja untuk saya, diuji menggunakan Xnest. Saya mengasumsikan tata letak dan akselerator menu bahasa Inggris yang tidak berubah.
Mungkin saja ada sembulan yang menghalangi Anda, dalam hal ini patut dicoba:
beberapa kali, lalu coba lagi simpan & tutup. Ingat xdotool cerewet tentang kasus yang tepat dari nama "kunci".
Anda harus dapat mencoba semua ini dengan memulai libreoffice di x2go, dan TIDAK memodifikasi DISPLAY Anda. Anda harus menyimpan perintah ke file skrip shell sehingga perubahan fokus tidak mengacaukan Anda.
lsof akan menampilkan file tidak lagi terbuka jika berfungsi :-)
sumber
xdotool key "Escape"
tentang nama tetapi tidak mencoba nama panjang: DSepertinya ada beberapa persyaratan yang mungkin. tampaknya host harus dalam file xhosts (ditandai sebagai jawaban) dan nilai DISPLAY yang sesuai diekspor. Posting ini di sini akan membantu Anda melakukannya dengan cara yang Anda inginkan, memungkinkan xdotool untuk menemukan jendela x11 jarak jauh .
sumber