
안타깝게도 카메라 드라이버를 번들로 제공하는 이 독점 프로그램을 사용해야 합니다. 몇 개의 버튼을 클릭하는 것과 관련된 특정 작업을 수행하고 싶습니다. 그리고 CLI가 없습니다.
그렇다면 이를 자동화하는 가장 쉬운 방법은 무엇입니까? 가짜 X 환경에서 프로그램을 열기 위해 xvfb를 사용하고 싶지만 입력 작업을 수행하려면 어떻게 해야 합니까? (x, y)의 클릭 픽셀일 수도 있지만 버튼과 메뉴 항목을 참조할 수 있다면 더욱 좋을 것입니다.
더 간단한 방법이 있다면 알려주세요! xvfb가 올바른 방법인지 잘 모르겠습니다. 내가 이루고자 하는 일의 실제 이름조차 모르기 때문에 검색이 매우 어렵습니다...
답변1
사용xdotool
키보드/마우스 입력, 창 관리 등을 위조할 수 있습니다.
다음을 기반으로 한 샘플 사용법install_mt4-xdot.sh
와인 아래에 Windows 앱을 설치하는 스크립트:
wine setup.exe &
echo "Waiting to initialize..."
while ! WID=$(xdotool search --name "Setup"); do
sleep 2
done
echo "Sending installer keystrokes..." >&2
xdotool key --window $WID --delay 500 space Tab Tab Tab Return Tab Tab Tab space Alt+n
echo "Waiting for installer to finish..." >&2
xwininfo -id $WID -tree
while pgrep -l setup; do sleep 5; done
echo "Waiting program to start..." >&2
while ! WID=$(xdotool search --name "Title - *"); do
sleep 2
done
echo "Closing application..." >&2
xdotool key --window $WID --delay 500 Escape Escape Alt+f x
sleep 1
wineserver -k
echo "Installation successful." >&2
이를 사용하면 xdotool
모든 앱이나 창을 제어할 수 있습니다.
그러나 Xvfb에서만 실행되는 와인 앱인 경우 사용을 고려할 수도 있습니다.winetricks
.