Существует порт AutoHotKey для Linux под названием IronAHK и аналогичный инструмент под названием Autokey . Я тоже не использовал, я не знаю, насколько хорошо они работают.
Кроме таких программ, вы не найдете точно такой же инструмент автоматизации. Основным средством автоматизации пользователей в Unix-системах является оболочка. Оболочка - это клей, который объединяет другие инструменты: он может запускать внешние программы и контролировать, как они обмениваются данными. Сама оболочка не содержит ничего для манипулирования такими понятиями GUI, как окна и указатель мыши mouse. Что вы делаете, это вызываете специализированные инструменты в скрипте оболочки, в частности, xdotool для манипулирования окнами и ввода нажатий клавиш и событий мыши .
Например, следующий скрипт щелкает по позиции (40,20) в окне Myapp.
#!/bin/sh
xdotool search --class Myapp \
mousemove --window %1 40 20 \
click 1
¹ За исключением dtksh , но я никогда не видел его порта Linux.
Жиль "ТАК - перестань быть злым"
источник
Вы можете использовать xautomation в Linux. Я использую его на экранах дисплея Raspberry Pi, чтобы отправлять обновления страницы F5 и «возвращать» (вводить) нажатия клавиш для входа в систему.
источник
Используйте AutohotkeyX, это недавний WINE-порт autohotkey, который, согласно тестированию winehq, делает все, что Autohokey может делать на окнах. Это просто лучший и самый простой ответ.
https://appdb.winehq.org/objectManager.php?sClass=version&iId=17738
Я лично не проверял это, но результаты WINEHQ имеют тенденцию
источник
Загрузите Autohotkey для Linux. Создайте файл Autohotkey (example.ahk). Используйте wine, чтобы запустить Ahk2Exe.exe из папки Autohotkey. Скомпилируйте файл example.ahk для example.exe. Используйте wine для запуска example.exe.
источник
Есть несколько проектов, которые решают эту проблему. Двумя наиболее активными из них, AFAIK , являются sikuli и AutoKey (проект, который я помогаю поддерживать).
Я не использовал sikuli, но, похоже, он основан на поиске шаблонов на экране и инициировании действий на их основе.
AutoKey позволяет пользователю определять триггерные фразы и горячие клавиши, которые расширяют фразы (по аналогии с очень мощной функцией автозамены) или запускают сценарии, написанные на Python3, которые ограничены только навыками программирования пользователя. Он предоставляет API для генерации событий клавиатуры и мыши. Он также интегрируется с Xautomation, что позволяет найти небольшое изображение на экране и навести на него курсор мыши.
Я использую AutoKey в течение многих лет и поддерживаю его в нашем списке . Это как ряд инструментов повышения производительности: вы можете обойтись без него, но как только вы начнете использовать его, вы удивитесь, как раньше обходились без него.
Некоторые особенности:
AutoKey не работает с определениями и скриптами AutoHotKey. Они должны быть переписаны.
Я написал сценарий проверки концепции bash (доступный по запросу), который переводит фразы AutoHotKey в фразы AutoKey, но это только отправная точка и игнорирует большинство параметров AutoHotKey.
Поскольку сценарии AutoKey написаны на Python3, также можно вызывать такие инструменты, как xdotool и wmctrl, из сценария, чтобы обеспечить дополнительную функциональность, но это обычно не требуется. Хотя скрипты AutoKey написаны на Python, довольно многое можно сделать с очень ограниченными знаниями Python. Вам не нужно быть беглым программистом Python для большинства целей.
Если вы используете дистрибутив на основе Debian, не устанавливайте версию AutoKey, предоставляемую вашим дистрибутивом. Их пакет AutoKey не поддерживается и очень старый. Получите актуальную версию от нас .
источник
Kantu - это кроссплатформенный инструмент для автоматизации рабочего стола , который очень хорошо работает в Ubuntu (я не тестировал его на других версиях)
Да уж. Но AHK и Kantu позволяют пользователю автоматизировать задачу внутри приложения, имитируя щелчки мыши и нажатия клавиш. Оболочка не может этого сделать. Я использую его для автоматизированных тестов плюс несколько хаков производительности.
Конечно, вы можете объединить kantu с python или запустить его прямо из оболочки.
источник
Просто используйте XEV и XMODMAP. ПРОСТО и лучше, чем выделенные программы или эмуляция дрянных приложений Windows. Все мои вещи в LINUX используют сценарии для переопределения клавиш и изменения режимов экрана, а затем, когда программа завершена и завершена, верните все в нормальное состояние. Примерно так же легко использовать XMODMAP и создать сценарий, как и сценарий AHK, но с дополнительным бонусом - нет необходимости запускать эмулируемое приложение Windows. И для людей, которые говорят, что ты не можешь сделать то или это ... НЕПРАВИЛЬНО. Вы можете сделать больше из оболочки Linux, чем любая другая ОС, и вы можете делать все, о чем мы говорим, в том числе перемещать окна и при этом использовать системные системные команды, которые встроены!
источник
Я хотел бы отметить, что все приведенные выше решения работают только на системах X11. Нет никакого решения (или, по крайней мере, я еще никого не нашел), которое работает на Вейленде.
источник