Eu tenho a resposta aqui .
este seria o script para maximizá-lo na metade direita da tela :
#!/bin/bash
# resizes the window to full height and 50% width and moves into upper right corner
#define the height in px of the top system-bar:
TOPMARGIN=27
#sum in px of all horizontal borders:
RIGHTMARGIN=10
# get width of screen and height of screen
SCREEN_WIDTH=$(xwininfo -root | awk '$1=="Width:" {print $2}')
SCREEN_HEIGHT=$(xwininfo -root | awk '$1=="Height:" {print $2}')
# new width and height
W=$(( $SCREEN_WIDTH / 2 - $RIGHTMARGIN ))
H=$(( $SCREEN_HEIGHT - 2 * $TOPMARGIN ))
# X, change to move left or right:
# moving to the right half of the screen:
X=$(( $SCREEN_WIDTH / 2 ))
# moving to the left:
#X=0;
Y=$TOPMARGIN
wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -e 0,$X,$Y,$W,$H
Para ir para a esquerda, basta alterar a linha X para X=0
. (Se você usa o Ubuntu Unity, você precisa adaptar o RIGHTMARGIN também eu uso RIGHTMARGIN=102
)
definindo as margens certas, isso resolve o erro, e na segunda vez que você o chamar, ele irá para o topo da tela, ignorando a barra de ferramentas superior.