Isso funciona para o usuário raiz :
cat /dev/input/$(grep -E 'Handlers|EV=' /proc/bus/input/devices | \
grep -B1 'EV=120013' | grep -Eo 'event[0-9]+') | \
while read -rsn1 foo ; do echo "$foo" ; done | nl
Saída (até Ctrl-C ):
1 ԥ
2 �W
3 ^
4
5
O código lê de qualquer arquivo / dev / input / event * que atualmente corresponde ao teclado. Cada tecla é pressionada em linhas separadas e, em seguida, numera cada linha - as teclas se acumulam rapidamente, de modo que os números de linha ajudam a mostrar que a rotina está funcionando.
Tente abrir um editor de texto em uma pequena janela em primeiro plano, insira algum texto no editor e observe os números percorrendo o terminal de segundo plano.
O código grep
acima emprestado da resposta de JacobP aqui:
Captura de evento de teclado do Linux / dev / inputX