我在用同步客户端跟踪手指在触摸板上的位置。我使用以下命令。
synclient -m 100 | awk '{print $2,$3}'
此命令给出触摸板上的“x”和“y”坐标。
我想要的是,将这些坐标提供给绘制这些点的程序。一旦跟踪到新点,就应该绘制它。但我的问题是,由于该命令连续生成输出并且尚未完成,所以我不知道如何传递命令的连续生成输出。如何实现这一目标?
(我所取得的成就如下:
timeout 5 synclient -m 100 > pattern
因此,5 秒后,“图案”文件包含了所有信息,我从文件中提取坐标并绘制线条。但我不想这样做。)
答案1
我假设每行都会产生一个新的绘图。所以像
synclient -m 100 |
while read _ x y; do
drawprogram $x $y
done
应该做。如果您遇到缓冲问题,请查看stdbuf
.