Apakah ada cara untuk skrip bash untuk mencari nama ruang kerja saat ini (virtual desktop)?
Ini tampaknya sangat berguna untuk hal-hal seperti menyesuaikan perilaku dalam file .bashrc saya berdasarkan pada desktop di mana shell dibuat.
Apakah ada cara untuk skrip bash untuk mencari nama ruang kerja saat ini (virtual desktop)?
Ini tampaknya sangat berguna untuk hal-hal seperti menyesuaikan perilaku dalam file .bashrc saya berdasarkan pada desktop di mana shell dibuat.
wmctrl -d | grep '*' | sed 's/.* //g'
Jawaban:
Anda dapat melakukannya dengan
wmctrl -d
mendaftar semua ruang kerja. The*
mewakili ruang kerja saat ini:Jadi, untuk mendapatkan arus saja, ambil untuk
*
:Semoga ini membantu!
sumber
wmctrl -d
wmctrl -d
.Viewports di Unity
Jika Anda menggunakan Unity , viewport saat ini tidak dapat diambil langsung dari
karena Unity memiliki viewports, yang tidak terdeteksi secara langsung oleh
wmctrl -d
. Output hanya akan menampilkan satu ruang kerja:xrandr
)5040x2100
. Itu adalah viewport 3x2: 5040/1680 = 3 dan 2100/1050 = 2.1680,1050
( viewport-) (x, y)Script di bawah ini menghitung viewport saat ini dari informasi ini:
Menggunakan:
Install
wmctrl
Jalankan dengan perintah
Ini akan menampilkan 1, 2, 3, atau apa pun viewport saat ini. Secara otomatis menghitung baris / kolom konfigurasi viewport Anda mungkin termasuk.
Penjelasan
Naskah
xrandr
, termasuk kemungkinan monitor tambahan.sumber
Paling tidak di shell Gnome, tapi mungkin juga di WM lain, Anda bisa menanyakan Xserver secara langsung (jika di Wayland, tidak tahu).
Pada dasarnya, perintah
xprop
akan kembalidan kemudian Anda dapat memijat sedikit info untuk mendapatkan apa yang Anda butuhkan.
sumber
_NET_DESKTOP_NAMES
.