48 lines
1.4 KiB
Bash
Executable file
48 lines
1.4 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# List normal windows
|
|
# wmctrl -l | awk '{if ($4 != "Desktop") print $1}'
|
|
#
|
|
# Change the number of desktops
|
|
# xprop -root -f _NET_NUMBER_OF_DESKTOPS 32c -set _NET_NUMBER_OF_DESKTOPS 2
|
|
#
|
|
# Move window to desktop
|
|
# xprop -id 0x03600007 -f _NET_WM_DESKTOP 32c -set _NET_WM_DESKTOP 0
|
|
#
|
|
# Move window to all desktops
|
|
# xprop -id 0x03600007 -f _NET_WM_DESKTOP 32c -set _NET_WM_DESKTOP 4294967295
|
|
|
|
while true
|
|
do
|
|
# change the number of desktops to a random value
|
|
num_desktops=$(( $RANDOM % 8 + 1 ))
|
|
xprop -root -f _NET_NUMBER_OF_DESKTOPS 32c -set _NET_NUMBER_OF_DESKTOPS $num_desktops
|
|
max_desktop=$(( $num_desktops - 1 ))
|
|
desktops=$(echo 4294967295; seq 0 $max_desktop)
|
|
for run in 1 2 3
|
|
do
|
|
# start and stop calculators
|
|
if (( $RANDOM % 5 == 0 ))
|
|
then
|
|
killall gnome-calculator 1>/dev/null 2>/dev/null
|
|
sleep 0.1
|
|
else
|
|
(gnome-calculator 1>/dev/null 2>/dev/null &)
|
|
fi
|
|
# change the current desktop to a random value
|
|
for change in 1 2 3
|
|
do
|
|
desktop=$(shuf -n 1 -e $(seq 0 $max_desktop))
|
|
xprop -root -f _NET_CURRENT_DESKTOP 32c -set _NET_CURRENT_DESKTOP $desktop
|
|
sleep 0.1
|
|
done
|
|
# move windows around
|
|
for win in $(wmctrl -l | awk '!/Terminal/ {if ($4 != "Desktop") print $1}')
|
|
do
|
|
desktop=$(shuf -n 1 -e $desktops)
|
|
xprop -id $win -f _NET_WM_DESKTOP 32c -set _NET_WM_DESKTOP $desktop
|
|
done
|
|
sleep 0.1
|
|
done
|
|
sleep 0.1
|
|
done
|