1
0
mirror of https://github.com/balkian/dotfiles.git synced 2024-11-05 13:11:43 +00:00
dotfiles/scripts/.bin/one-instance

28 lines
538 B
Plaintext
Raw Normal View History

#!/bin/bash
if [ "x$1" != "x" ]
then
pgrep -l -u "$USER" -f "$1" | egrep -v "/bin/bash|/bin/sh" | grep -vq "$$"
if [ $? == "0" ]
then
WID=`xdotool search --class $1 | head -1`
2015-09-04 09:58:09 +00:00
CWID=`xdotool getactivewindow`
if [ "x$WID" != "x$CWID" ];
then
2015-09-04 09:58:09 +00:00
xdotool windowactivate $WID
#wmctrl -i -R $WID
else
xdotool windowminimize $WID
fi
else
if [ "x$3" == "x" ]
then
/usr/bin/$1
else
eval "$3"
fi
fi
else
echo "Usage: one-instance program-name [extra action]"
fi