Ratón

Cómo usar Xdotool para estimular los clics del mouse y las pulsaciones de teclas en Linux

Cómo usar Xdotool para estimular los clics del mouse y las pulsaciones de teclas en Linux
Xdotool es una herramienta de línea de comandos gratuita y de código abierto para simular clics del mouse y pulsaciones de teclas. Este artículo cubrirá una breve guía sobre el uso de xdotool para automatizar las entradas del teclado y el mouse. Xdotool funciona solo en el servidor de pantalla X y no hay soporte para Wayland (en el momento de escribir este artículo).

Instalación de Xdotool

Para instalar xdotool en Ubuntu, ejecute el siguiente comando:

$ sudo apt install xdotool

Para instalar xdotool en otras distribuciones de Linux, busque el término "xdotool" en el administrador de paquetes. Xdotool está incluido en los repositorios de la mayoría de las distribuciones de Linux.

Simular una pulsación de tecla

Puede usar xdotool para simular una pulsación de tecla ejecutando el siguiente comando. Reemplace "n" con cualquier tecla o carácter válido en la distribución del teclado.

$ xdotool key n

Tenga en cuenta que el comando anterior simulará una pulsación de tecla y una liberación de tecla una tras otra y no notará ningún retraso entre estos eventos. En caso de que desee simularlos por separado, utilice los siguientes comandos:

$ xdotool keydown n
$ xdotool keyup n

Simular una pulsación de tecla con una tecla modificadora

Las teclas modificadoras modifican el comportamiento de las pulsaciones de teclas cuando se pulsan dos o más teclas simultáneamente. mi.gramo. , y así. El proceso para ejecutar combinaciones de teclas usando xdotool también es bastante similar:

$ xdotool tecla ctrl + s

Puede encontrar los nombres correctos para las teclas del teclado mediante el siguiente comando:

$ xev

Se abrirá una pequeña ventana. Mantenlo enfocado, luego presiona cualquier tecla. Obtendrá el nombre de la clave en la salida del terminal.

Simular teclas de repetición / Turbo / Rapid Fire

Para simular múltiples pulsaciones de teclas durante un período de tiempo, deberá especificar cuántas veces se deben simular las pulsaciones de teclas y el retraso entre cada pulsación de tecla. Para hacerlo, ejecute un comando en el siguiente formato:

$ xdotool key --repeat 5 - delay 50 n

Reemplace los valores de los interruptores "-repeat" y "-delay" (en milisegundos) de acuerdo con sus requisitos. Tenga en cuenta que tuve problemas de repetición cuando configuré el retraso en más de 500 ms. Esto podría ser un error o un comportamiento previsto y, si se enfrenta a problemas similares, evite establecer valores de retardo altos. Puede utilizar declaraciones de bucle "for" y "while" para superar esta limitación.

El comando que se indica a continuación ingresará la tecla "n" tres veces con un retraso de 2 segundos entre cada pulsación de tecla.

$ por i en 1… 3; hacer xdotool key n; dormir 2; hecho

También puede usar un bucle while para simular repetidamente las pulsaciones de teclas hasta que el bucle se interrumpa manualmente usando clave.

$ mientras sea verdadero; hacer xdotool key n; dormir 2; hecho

Simular una secuencia de teclas

Para simular varias teclas una tras otra, use un comando en el siguiente formato:

$ x tecla de herramienta x y z

Simular clics del mouse

Para simular un clic derecho en la ubicación actual del puntero, ejecute el siguiente comando:

$ xdotool haga clic en 3

Reemplace "3" con cualquier número de la siguiente referencia:

Si desea utilizar un conjunto de coordenadas diferente, utilice un comando en el siguiente formato:

$ xdotool mousemove 100100 haga clic en 3

Reemplaza "100" con las coordenadas deseadas como "X" e "Y" en la esquina superior izquierda de la pantalla.

Tenga en cuenta que varios ejemplos explicados hasta ahora con pulsaciones de teclas también se pueden usar con clics del mouse.

Obtenga una ventana activa y minimícela

El siguiente comando obtendrá la ID de la ventana actualmente enfocada y luego la minimizará:

$ xdotool getactivewindow windowminimize

Consulte la página de manual

Xdotool incluye numerosas opciones y puede usar innumerables combinaciones diferentes para personalizar el comportamiento de las pulsaciones de teclas y los clics del mouse. No es posible cubrir todos los casos de uso aquí, puede consultar la página de manual ejecutando el siguiente comando:

$ man xdotool

También puede acceder a la página de manual en línea.

Asignar comandos y scripts de Xdotool a atajos de teclado

Puede usar la GUI de configuración de atajos de teclado disponible en la configuración del sistema de su distribución para asignar comandos simples de xdotool a atajos de teclado personalizados. En caso de declaraciones complejas y múltiples, guarde los comandos en una secuencia de comandos y luego asigne la secuencia de comandos al método abreviado de teclado.

Conclusión

Xdotool es una de las mejores utilidades disponibles para automatizar entradas de teclado y mouse en Linux. Puede ejecutar macros simples y comandos complejos encadenando múltiples entradas simuladas.

Cómo analizar XML en C ++
En este artículo, vamos a discutir cómo analizar XML en el lenguaje de programación C ++. Veremos varios ejemplos de trabajo para comprender el mecani...
Operadores bit a bit de C ++
En este artículo, vamos a discutir los operadores bit a bit en el lenguaje de programación C ++. Veremos varios ejemplos de trabajo para comprender la...
Tutorial simple Hello World de C ++
C ++ es un lenguaje de programación flexible y de uso general que fue creado originalmente en 1985 por Bjarne Stroustrup, un científico informático da...