从Shellinput中检测元(特殊)键(Ctrl,Shift,Alt,Tab,Esc,Backspace)

我想知道是否有人知道如何从Shellinput中检测(特殊)键( CtrlShiftAltTabEscBackspace )。

我见过的post解释了如何检测箭头键等,但不是上述的特殊键。
有什么办法可以做$ showkey -s并使用原始的扫描代码以某种方式获得关键input?

任何forms的帮助将不胜感激!

Solutions Collecting From Web of "从Shellinput中检测元(特殊)键(Ctrl,Shift,Alt,Tab,Esc,Backspace)"

一般来说,你不能这样做。 那就是说:

  • X11发送KeyPressKeyRelease事件。
  • Linux控制台提供了一组允许对键盘进行低级访问的ioctl,在console_ioctl(4) 。 您可以将键盘设置为RAW或MEDIUMRAW模式( 不要将这些模式与termios的原始模式混淆,它们根本不相关 )。

我不确定它总是有道理的。 tty纪律是做某事(细节是血淋淋的)。 也许你需要一个帮助程序(例如,在C中,这将使用像ncursesreadline库),如dialog