GOOGLE ADS

воскресенье, 8 мая 2022 г.

Как вызвать ввод keboard с помощью скрипта bash

Я хочу управлять вводом с клавиатуры с помощью сценария bash.

Я обнаружил, что моя клавиатура подключена к /dev/input/event5.
И мне удалось получить шестнадцатеричное значение кнопки «F12», которую я хочу ввести, с помощью команды hexdump.

root@intel-corei7-64:/dev/input# hexdump /dev/input/event5
0000000 cb67 6270 0000 0000 1e09 0001 0000 0000
0000010 0004 0004 0045 0007 cb67 6270 0000 0000
0000020 1e09 0001 0000 0000 0001 0058 0001 0000
0000030 cb67 6270 0000 0000 1e09 0001 0000 0000
0000040 0000 0000 0000 0000 cb67 6270 0000 0000
0000050 1812 0002 0000 0000 0004 0004 0045 0007
0000060 cb67 6270 0000 0000 1812 0002 0000 0000
0000070 0001 0058 0000 0000 cb67 6270 0000 0000
0000080 1812 0002 0000 0000 0000 0000 0000 0000

Я хочу вызвать сигнал клавиатуры, используя это шестнадцатеричное значение.
Как я могу это сделать? Я хочу превратить его в сценарий оболочки, который ведет себя как нажатие F12.


Решение проблемы

Использование xdotoolутилиты X-сервера

xdotoolКоманда может использоваться внутри сценария оболочки для запуска любых сигналов клавиатуры.

Чтобы имитировать нажатие клавиши, используйте:

xdotool key <key>

Например, для имитации нажатия F12:

xdotool key F12

Вы можете установить то же самое, если используете Debian, Ubuntu.

sudo apt-get install xdotool

Или, если вы используете Fedora, установите с помощью следующих команд.

sudo yum install xdotool

Это должно быть полезно для имитации ввода с клавиатуры.
http://manpages.ubuntu.com/manpages/trusty/man1/xdotool.1.html

Использование tput

Вставьте следующее в сценарий оболочки.

set kf12 [exec tput kf12]
send $kf12

Пожалуйста, проверьте следующую справочную страницу для tput.

Для различных символов см . справочную страницу terminfo.

Ссылки Ссылки:


  1. https://www.xmodulo.com/simulate-key-press-mouse-movement-linux.html

  2. https://unix.stackexchange.com/questions/267704/command-to-simulate-keyboard-input

  3. Отправьте INSERT и F12 в сценарии ожидания

Комментариев нет:

Отправить комментарий

Laravel Datatable addColumn returns ID of one record only

Я пытаюсь использовать Yajra Datatable для интеграции DataTable на свой веб-сайт. Я смог отобразить таблицу, но столкнулся с проблемой. В по...