Muis

Hoe Xdotool te gebruiken om muisklikken en toetsaanslagen in Linux te stimuleren

Hoe Xdotool te gebruiken om muisklikken en toetsaanslagen in Linux te stimuleren
Xdotool is een gratis en open source opdrachtregelprogramma voor het simuleren van muisklikken en toetsaanslagen. Dit artikel behandelt een korte handleiding over het gebruik van xdotool om toetsenbord- en muisinvoer te automatiseren. Xdotool werkt alleen op de X-displayserver en er is geen ondersteuning voor Wayland (op het moment van schrijven van dit artikel).

Xdotool installeren

Voer de onderstaande opdracht uit om xdotool in Ubuntu te installeren:

$ sudo apt install xdotool

Om xdotool in andere Linux-distributies te installeren, zoekt u naar de term "xdotool" in de pakketbeheerder. Xdotool is opgenomen in repositories van de meeste Linux-distributies.

Een toetsaanslag simuleren

U kunt xdotool gebruiken om een ​​toetsaanslag te simuleren door de onderstaande opdracht uit te voeren:. Vervang "n" door een geldige toets of teken in de toetsenbordindeling.

$ xdotool-sleutel nr

Houd er rekening mee dat de bovenstaande opdracht zowel het indrukken van een toets als het loslaten van een toets na elkaar zal simuleren en dat u geen vertraging zult merken tussen deze gebeurtenissen. Als je ze apart wilt simuleren, gebruik dan de volgende commando's:

$ xdotool keydown n
$ xdotool keyup n

Een toetsaanslag simuleren met een modificatietoets

Modificatietoetsen wijzigen het gedrag van toetsaanslagen wanneer twee of meer toetsen tegelijkertijd worden ingedrukt. E.g. , enzovoorts. Het proces voor het uitvoeren van toetscombinaties met xdotool is ook vrij gelijkaardig:

$ xdotool-toets ctrl+s

U kunt de juiste namen voor toetsenbordtoetsen vinden door de volgende opdracht te gebruiken:

$ xev

Er wordt een klein venster geopend. Houd het gefocust en druk vervolgens op een willekeurige toets. U krijgt de naam van de sleutel in terminaluitvoer.

Simuleer herhaaltoetsen / Turbo / Rapid Fire

Om meerdere toetsaanslagen gedurende een bepaalde periode te simuleren, moet u specificeren hoeveel keer toetsaanslagen moeten worden gesimuleerd en de vertraging tussen elke toetsaanslag. Voer hiervoor een opdracht uit in de volgende indeling:

$ xdotool-toets --repeat 5 --delay 50 n

Vervang de waarden van "-repeat" en "-delay" (in milliseconden) schakelaars volgens uw vereisten. Merk op dat ik herhalingsproblemen had toen ik de vertraging instelde op meer dan 500 ms. Dit kan een bug of beoogd gedrag zijn en als u soortgelijke problemen ondervindt, vermijd dan het instellen van hoge vertragingswaarden. U kunt "for" en "while" loop-statements gebruiken om deze beperking te omzeilen.

De onderstaande opdracht voert de "n"-toets drie keer in met een vertraging van 2 seconden tussen elke toetsaanslag.

$ voor i in 1... 3; doe xdotool-toets n; slaap 2; gedaan

U kunt ook een while-lus gebruiken om toetsaanslagen herhaaldelijk te simuleren totdat de lus handmatig wordt onderbroken met sleutel.

$ terwijl waar; doe xdotool-toets n; slaap 2; gedaan

Een toetsenreeks simuleren

Gebruik een opdracht in de volgende indeling om meerdere toetsen na elkaar te simuleren:

$ xdotool-sleutel x y z

Muisklikken simuleren

Voer de onderstaande opdracht uit om een ​​rechterklik op de huidige locatie van de aanwijzer te simuleren:

$ xdotool klik 3

Vervang "3" door een willekeurig nummer uit de onderstaande referentie:

Als u een andere set coördinaten wilt gebruiken, gebruikt u een opdracht in het volgende formaat:

$ xdotool mousemove 100 100 klik 3

Vervang "100" door de gewenste coördinaten als "X" en "Y" in de linkerbovenhoek van het scherm.

Merk op dat verschillende voorbeelden die tot nu toe zijn uitgelegd met toetsaanslagen ook kunnen worden gebruikt met muisklikken.

Activeer venster en minimaliseer het

De volgende opdracht haalt de ID van het venster dat momenteel in focus is en minimaliseert het vervolgens:

$ xdotool getactivewindow windowminimalize

Raadpleeg de man-pagina

Xdotool bevat talloze opties en je kunt talloze verschillende combinaties gebruiken om het gedrag van toetsaanslagen en muisklikken aan te passen. Het is niet mogelijk om alle use-cases hier te behandelen, u kunt naar de man-pagina verwijzen door de onderstaande opdracht uit te voeren:

$ man xdotool

U kunt de man-pagina ook online openen.

Wijs Xdotool-opdrachten en -scripts toe aan sneltoetsen

U kunt de configuratie-GUI voor sneltoetsen gebruiken die beschikbaar is in de systeeminstellingen van uw distributie om eenvoudige xdotool-opdrachten toe te wijzen aan aangepaste sneltoetsen. In het geval van complexe en meerdere instructies, sla de commando's op in een script en wijs het script vervolgens toe aan de sneltoets.

Conclusie

Xdotool is een van de beste hulpprogramma's die beschikbaar zijn voor het automatiseren van toetsenbord- en muisinvoer in Linux. U kunt zowel eenvoudige macro's als complexe opdrachten uitvoeren door meerdere gesimuleerde invoer aan elkaar te koppelen.

Hoe maak je een harde link en een zachte link in Linux?
In het Linux-besturingssysteem wordt alle informatie over een bestand opgeslagen in de respectieve inode. Met deze inodes kun je alle metadata van een...
Een map kopiëren in Linux?
De bestanden en mappen worden vaak gebruikt in elk besturingssysteem. Soms bevat je map enkele cruciale gegevens en bewaar je liever meerdere back-ups...
Hoe installeer en configureer ik Nemo File Manager in Linux
Nemo is een relatief nieuwe bestandsbeheerder die standaard wordt geleverd in Linux Mint. Het maakt deel uit van de Cinnamon-desktopomgevingstack op L...