Автоматизация с использованием xdotool и Xvfb - PullRequest
9 голосов
/ 23 февраля 2011

Я пытаюсь автоматизировать получение данных сэмплера ЦП из visualvm в производственной системе.Но для этого мне нужен способ автоматизации задач внутри Xvfb.

Я обнаружил, что xdotool хорош для такой автоматизации.Прямо сейчас у меня есть следующий скрипт:

Xvfb $DISPLAY -pixdepths 32 -screen 0 1280x1024x24 >/dev/null 2>&1 & XPID=$!

echo "Before twm"
#twm -display $DISPLAY &
gnome-wm &

#$VISUALVM --openpid $PID_TO_OPEN &

echo "Before gimp"
gimp &

sleep 5
xdotool search "GNU.*" windowactivate windowfocus key alt+f n

sleep 3
DISPLAY=:0.0
xwd -display :9.0 -root | xwdtopnm | pnmtopng > out.png

qiv out.png

Он должен открыть Xvfb, запустить gimp и нажать File-> New.Это происходит, когда я делаю это в обычном X, но когда я выполняю этот скрипт в Xvfb, похоже, что он не передает события клавиатуры.Я тестировал его с помощью мыши, и это то же самое, xdotool не передает (или Xvfb не принимает) события от мыши.

Кто-нибудь сталкивался с этой проблемой и знает решение?

...