我想检测运行脚本时是否按下了某个键。我有以下脚本:
#!/bin/bash
sleep 0.5
xte 'str sometext'
我使用快捷方式运行此脚本,将“sometext”粘贴到我在 kde 中的位置。我在这里使用了 sleep 0.5,因为脚本本身是通过使用 ctrl 和 alt 的快捷方式运行的。如果省略 sleep 0.5,则结果是发送ctrl+ s、ctrl+o等...。我认为解决方案是在开始时添加一些繁忙的等待,这会阻塞直到没有按键被按下。我怎样才能让它在脚本中工作?
答案1
既然你无论如何都在使用 xte,为什么不使用 xte 释放密钥呢?沿着线的东西
xte "keyup Control_L"
xte "keyup l"
(假设你的快捷键是 ctrl-l)。