#!/bin/bash while true ; do getopts 'a:w:' x case "$x" in a) app="$OPTARG" ;; ?) break ;; esac done shift $(( $OPTIND - 1 )) prog="$1" shift if [ x"$app" = x -o x"$prog" = x ] ; then echo "Start program on virtual window" echo "usage:" echo "$0 -a appname command" echo "example:" echo "$0 -a Calculator xcalc -stipple -rpn" exit 1 fi cw=$(wmctrl -d | grep ' \* DG' | awk '{ print $1 }') desktops=`wmctrl -d | awk '{print $1}'` for i in $desktops ; do startondesktop -d $i -a "$app" "$prog" "$@" done wmctrl -s "$cw"