pid
먼저 , 나는긍정적인창문.
active_window_pid=$(xdotool getactivewindow getwindowpid)
두 번째로 클릭합니다.다른Window는 실제로 아래의 기능입니다.
mouse_click 4000 1000
셋째, 다시 시작하고 싶어요이전에 활동했던창밖에서는 아쉽게도 성공하지 못했습니다.
xdotool search --pid $active_window_pid windowactivate
function mouse_click
function mouse_click {
# 1. activate window and wait for sync,
# we need to do this before each click,
# because the user may have clicked on some other window during the 2 second delay
# 2. move the mouse cursor to the given position and wait for sync
# 3. click the left mouse button
# 4. restore the original mouse cursor position and wait for sync
# 5. wait for 2 seconds
xdotool search --name "window name" windowactivate --sync
xdotool mousemove --sync $1 $2 \
click 1 \
mousemove --sync restore \
sleep 2
}
이번에는 내가 뭘 잘못한 걸까? 어떤 아이디어가 있나요?
답변1
xdotool
적어도 일부 버전에는 버그가 있습니다.
오류 문자열:
1개의 매개변수를 사용할 수 없습니다. 0개만 사용할 수 있습니다. 이것은 실수입니다.
버그 추적기:
https://github.com/jordansisssel/xdotool/issues/14
오류 해결:
설정--name "whatever"
function activate_window_via_pid {
# for the chrome browser there are multiple processes,
# therefore we must pick one of them,
# the last one seems to work
window_id=$(xdotool search --pid $1 --name "bug workaround" | tail -1)
xdotool windowactivate --sync $window_id
}