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

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

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 в настоящее время применяет.

  • Как переустановить USB-накопитель после размонтирования Nautilus без его отсоединения?
  • Отображение файловых систем USB на порты USB
  • монтаж съемных USB-дисков с nodev, noexec, nosuid
  • определить, к какому порту подключен USB-накопитель
  • Понять вывод `udevadm info -a -n / dev / sdb`
  • Как установить Linux на USB, который копирует себя в ОЗУ при загрузке, а затем снова сбрасывает измененные данные на USB при выключении?
  • Почему Linux и OSX не требуют драйвера для подключения к Android-устройству?
  • USB-порты, не работающие с Ubuntu Linux 14
  • Имеет / sys / bus / usb / одинаковую структуру во всех дистрибутивах Linux
  • Не удалось подключить Ethernet через ключ
  • Вход с использованием закрытого ключа на USB-ключ на SSH @ linux
  • Interesting Posts

    Как копировать только совпадающие файлы, сохраняя подкаталоги

    Как найти дубликаты процессов во FreeBSD?

    Сообщение редактора Vi – преобразование входной кодировки не поддерживается

    Не удается достоверно создать каталог при запуске после того, как экземпляр ec2 монтирует свои эфемерные диски

    Я уничтожил таблицу разделов с помощью gparted, есть ли способ восстановить мой раздел?

    Как работает FING (или любой из IP-адресов)?

    Ошибка сравнения файлов – awk

    Как настроить Tcl на Linux с нуля?

    Является ли это ядро ​​предупреждением о серьезной проблеме, которая нуждается в моем внимании?

    Conky: round $ {top cpu 1}

    Как восстановить домашнюю резервную копию в почти новый Debian?

    Должна ли VPN иметь доступ ко всем сетям от и от всех клиентов?

    Как имитировать периодическое нажатие кнопки на веб-странице?

    Как использовать хэш (#) в качестве разделителя для sed

    Только root может войти в систему с помощью xrdp

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