Cómo usar XDotool para estimular los clics y las teclas en Linux en Linux

Cómo usar XDotool para estimular los clics y las teclas en Linux en Linux
XDotool es una herramienta de línea de comandos de código abierto y gratuito para simular los clics y las 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 X Display Server, y no hay soporte para Wayland (al momento de escribir este artículo).

Instalación de xdotool

Para instalar xdotool en Ubuntu, ejecute el comando a continuación:

$ 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 repositorios de la mayoría de las distribuciones de Linux.

Simular una tecla de tecla

Puede usar xdoTool para simular una pulsación de teclas ejecutando el comando a continuación. Reemplace "n" con cualquier clave o carácter válido en el diseño del teclado.

$ xdotool key n

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

$ xdotool keydown n
$ xdotool keyup n

Simular una tecla de tecla con una tecla modificadora

Teclas modificador Modifique el comportamiento de las supresas de teclas cuando se presionan dos o más teclas simultáneamente. mi.gramo. , etcétera. El proceso para ejecutar combinaciones clave utilizando xdotool también es bastante similar:

$ xdotool key ctrl+s

Puede encontrar los nombres correctos para las teclas de teclado usando el siguiente comando:

$ xev

Se abrirá una pequeña ventana. Manténgalo enfocado, luego presione cualquier tecla. Obtendrá el nombre de la clave en la salida terminal.

Simular las teclas repetidas / turbo / fuego rápido

Para simular múltiples supresas de teclas durante un período de tiempo, tendrá que especificar cuántos número de veces se deben simular las supresas de las teclas y retrasar entre cada tecla Presione. Para hacerlo, ejecute un comando en el siguiente formato:

$ XDOTOOL KEY -Repeat 5 --láye 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 establecí la demora en más de 500 ms. Esto podría ser un error o comportamiento previsto y si enfrenta problemas similares, evite establecer valores de retraso altos. Puede usar declaraciones de bucle "para" y "while" para superar esta limitación.

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

$ para i en 1 ... 3; hacer xdotool key n; dormir 2; hecho

También puede usar un bucle de tiempo para simular repetidamente KeyPressS hasta que el bucle se interrumpe manualmente usando la tecla.

$ mientras cierto; hacer xdotool key n; dormir 2; hecho

Simular una secuencia clave

Para simular múltiples claves una tras otra, use un comando en el siguiente formato:

$ xdotool key x y z

Simular los clics del mouse

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

$ xdotool clic 3

Reemplace "3" con cualquier número de la referencia a continuación:

  • 1 - Haga clic a la izquierda
  • 2 - Haga clic en el medio
  • 3 - Haga clic derecho
  • 4 - Rollo de desplazamiento hacia arriba
  • 5 - Desplácese la rueda hacia abajo

Si desea usar un conjunto diferente de coordenadas, use un comando en el siguiente formato:

$ xdotool mousemove 100 100 haga clic 3

Reemplace "100" con las coordenadas deseadas como "X" y "Y" desde la esquina superior izquierda de la pantalla.

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

Obtenga una ventana activa y minimatela

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

$ xdotool getactivewindow windowminimize

Consulte la página del hombre

XDotool incluye numerosas opciones y puede usar innumerables combinaciones diferentes para personalizar el comportamiento de las teclas y los clics del mouse. No es posible cubrir todos los casos de uso aquí, puede consultar la página del hombre ejecutando el comando a continuación:

$ hombre xdotool

También puede acceder a la página del hombre en línea.

Mapa de comandos y scripts de mapa XDotool a los atajos de teclado

Puede usar la GUI de configuración de acceso directo de teclado disponible en la configuración del sistema de su distribución para asignar comandos XDotool simples a atajos de teclado personalizados. En el caso de declaraciones complejas y múltiples, guarde los comandos en un script y luego asigne el script al atajo de teclado.

Conclusión

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