Как я могу направить ввод с двух клавиатур на два соответствующих терминала на одном компьютере?

Я хочу подключить два USB-клавиатуры к одному компьютеру (Linux). Затем я хочу открыть 2 консоли # 1 и # 2 и выполнить один процесс на каждом из них. Затем я хочу получить ввод с клавиатуры # 1 на консоли №1 и ввода с клавиатуры # 2 на консоли # 2, то есть каждая клавиатура подает вход в конкретный процесс. Как это можно достичь? Предположим, что код написан на C. Спасибо!

  • Почему это устройство USB не автовосстанавливается?
  • Android-устройство не распознано lsusb больше
  • Быстрый способ найти USB-идентификатор на основе USB-пути
  • Как установить ubuntu на живой USB-накопитель, с которого я загрузился?
  • Установить на USB-накопитель
  • PS / 2 для USB-порта для клавиатуры дает «неспособность перечислить USB-устройство на порт 5»
  • USB MIDI-клавиатура (Oxygen 61) теперь не появляется в QJackCtl
  • Правила Udev для устройства с несколькими интерфейсами
  • One Solution collect form web for “Как я могу направить ввод с двух клавиатур на два соответствующих терминала на одном компьютере?”

    Чтобы программа считывала ввод с определенной клавиатуры, вы можете заставить ее считывать необработанные события с правильного устройства ввода. Устройства ввода (с типичной настройкой udev) /dev/event[0-9]* , и вы можете узнать, какой из них вы используете через /dev/input/by-id/*-kbd и /dev/input/by-path/*-kbd . Посмотрите by-id чтобы он соответствовал устройству по его идентификации (поставщику и серийному номеру) или by-path чтобы соответствовать ему через порт USB, в который он подключен.

    Вы можете настроить параметры udev, которые генерируют имена в /dev/*/by-*/ . Вы можете найти информацию, которую udev имеет в своем распоряжении, запустив udevadm info -a -n /dev/input/event42 (вы также можете сказать udev использовать вывод из какой-либо другой программы, если у вас есть программа, которая сообщает больше информации о Устройство). Если у вас возникли проблемы с разграничением между двумя клавиатурами, посмотрите на udevadm info для отличительных характеристик. Вы также можете запустить udevadm test /class/input/event42 чтобы узнать, какие правила udev в настоящее время применяет.

    Interesting Posts

    Как я могу «сшить» псевдонимы оболочки?

    простое разрешение хоста в локальной сети

    Я что-то испортил, случайно вставив «/ etc / inittab» в оболочку?

    Почему «диалог» не отображает меню (но принимает принятие) при запуске с помощью выражения подстановки команд?

    Заменить поле в одном файле на основе совпадения с другим полем в другом файле

    Почему это сравнение не равно?

    Как переименовать файлы, используя комбинацию циклов в bash?

    Как отправить нелокальную почту с помощью SMTP GMail (GApps)?

    Может кто-нибудь объяснить, что делает этот chown на самом деле?

    Что такое код ошибки 68 для msmtp и какие проблемы могут спровоцировать его?

    Как запретить пользователям переименование файлов при предоставлении разрешений на запись в Linux

    Перезаписать файл с использованием AWK в цикле for

    Как сделать снимок экрана моего буфера Xvfb?

    Проверьте, существует ли файл файла в другом файле и обновляется конкретный столбец первого файла

    Жесткие диски не будут вращаться с помощью команды hdparm

    Linux и Unix - лучшая ОС в мире.