GNU/Linux >> Belajar Linux >  >> Linux

Siklus melalui jendela aplikasi yang sama menggunakan wmcrtl

Saya menemukan masalah dalam skrip, jika tidak ada jendela yang memiliki fokus.

Bolehkah Anda mencoba skrip yang dimodifikasi berikut ini:

#!/bin/bash
win_class=$1 # 'terminator' # $1

# get list of all windows matching with the class above
win_list=$(wmctrl -x -l | grep -i $win_class | awk '{print $1}' )

# get id of the focused window
active_win_id=$(xprop -root | grep '^_NET_ACTIVE_W' | awk -F'# 0x' '{print $2}')
if [ "$active_win_id" == "0" ]; then
    active_win_id=""
fi

# get next window to focus on, removing id active
switch_to=$(echo $win_list | sed s/.*$active_win_id// | awk '{print $1}')

# if the current window is the last in the list ... take the first one
if [ "$switch_to" == '' ];then
   switch_to=$(echo $win_list | awk '{print $1}')
fi

# switch to window
wmctrl -i -a $switch_to

Linux
  1. Jalankan Script Yang Sama Pada Beberapa Server Melalui Ssh?

  2. Jalankan Keduanya Pada Saat Yang Sama, Windows Dan Ubuntu?

  3. Menggunakan pintasan keyboard dengan tombol windows di Linux Mint Mate

  1. Kapan terakhir kali Anda menggunakan Windows?

  2. Menghapus dan menambahkan izin menggunakan notasi numerik pada baris yang sama

  3. bagaimana cara melakukan tunnel Windows Remote Desktop melalui ssh menggunakan kotak linux?

  1. Memecahkan masalah menggunakan sistem file proc di Linux

  2. Apakah Mungkin Penyelesaian Bash Untuk Berputar Melalui Alternatif?

  3. Nonaktifkan pengguna administrator di Windows