Installazione di Xdotool
Per installare xdotool in Ubuntu, esegui il comando seguente:
$ sudo apt install xdotoolPer installare xdotool in altre distribuzioni Linux, cerca il termine "xdotool" nel gestore pacchetti. Xdotool è incluso nei repository della maggior parte delle distribuzioni Linux.
Simula una sequenza di tasti
Puoi usare xdotool per simulare una sequenza di tasti eseguendo il comando qui sotto. Sostituisci "n" con qualsiasi tasto o carattere valido nel layout della tastiera.
$ chiave xdotool nNota che il comando sopra simulerà sia la pressione di un tasto che il rilascio di un tasto uno dopo l'altro e non noterai alcun ritardo tra questi eventi. Nel caso in cui desideri simularli separatamente, usa i seguenti comandi:
$ xdotool keydown n$ xdotool keyup n
Simula una sequenza di tasti con un tasto modificatore
I tasti modificatori modificano il comportamento dei tasti premuti quando due o più tasti vengono premuti contemporaneamente. E.g.
Puoi trovare i nomi corretti per i tasti della tastiera usando il seguente comando:
$ xevSi aprirà una piccola finestra. Mantieni la concentrazione, quindi premi un tasto qualsiasi. Otterrai il nome della chiave nell'output del terminale.
Simula tasti di ripetizione / Turbo / Fuoco rapido
Per simulare più tasti premuti in un periodo di tempo, dovrai specificare il numero di volte in cui i tasti premuti devono essere simulati e il ritardo tra ogni pressione del tasto. Per fare ciò, esegui un comando nel seguente formato:
$ tasto xdotool --repeat 5 --delay 50 nSostituisci i valori degli interruttori "-repeat" e "-delay" (in millisecondi) in base alle tue esigenze. Nota che ho avuto problemi di ripetizione quando ho impostato il ritardo su più di 500 ms. Questo potrebbe essere un bug o un comportamento previsto e se stai affrontando problemi simili, evita di impostare valori di ritardo elevati. È possibile utilizzare le istruzioni di ciclo "for" e "while" per superare questa limitazione.
Il comando indicato di seguito inserirà il tasto "n" tre volte con un ritardo di 2 secondi tra ogni sequenza di tasti.
$ per i in 1… 3; fai xdotool chiave n; dormire 2; fattoPuoi anche usare un ciclo while per simulare ripetutamente la pressione dei tasti fino a quando il ciclo non viene interrotto manualmente usando
Simula una sequenza di tasti
Per simulare più chiavi una dopo l'altra, usa un comando nel seguente formato:
$ chiave xdotool x y zSimula clic del mouse
Per simulare un clic destro nella posizione corrente del puntatore, esegui il comando seguente:
$ xdotool clic 3Sostituisci "3" con qualsiasi numero dal riferimento seguente:
- 1 - Clic sinistro
- 2 - Clic centrale
- 3 - Clic destro
- 4 - Rotella di scorrimento verso l'alto
- 5 - Rotella di scorrimento verso il basso
Se vuoi usare un diverso insieme di coordinate, usa un comando nel seguente formato:
$ xdotool mousemove 100 100 clic 3Sostituisci "100" con le coordinate desiderate come "X" e "Y" dall'angolo in alto a sinistra dello schermo.
Nota che vari esempi spiegati finora con le sequenze di tasti possono essere utilizzati anche con i clic del mouse.
Ottieni finestra attiva e riducila a icona
Il seguente comando otterrà l'ID della finestra attualmente attiva e quindi la ridurrà a icona:
$ xdotool getactivewindow windowminimizeFare riferimento alla pagina Man
Xdotool include numerose opzioni e puoi utilizzare innumerevoli combinazioni diverse per personalizzare il comportamento delle sequenze di tasti e dei clic del mouse. Non è possibile coprire tutti i casi d'uso qui, puoi fare riferimento alla pagina man eseguendo il comando seguente:
$ man xdotoolPuoi anche accedere alla pagina man online.
Mappa i comandi e gli script di Xdotool sulle scorciatoie da tastiera
Puoi utilizzare la GUI di configurazione delle scorciatoie da tastiera disponibile nelle impostazioni di sistema della tua distribuzione per assegnare semplici comandi xdotool alle scorciatoie da tastiera personalizzate. In caso di istruzioni complesse e multiple, salvare i comandi in uno script e quindi mappare lo script sulla scorciatoia da tastiera.
Conclusione
Xdotool è una delle migliori utility disponibili per automatizzare gli input di tastiera e mouse in Linux. Puoi eseguire macro semplici e comandi complessi concatenando più input simulati.