我有一台 CNC,软件从终端运行。我想实时捕捉当前的 Z 轴深度并显示出来。我需要的信息显示在终端中以及运行期间的日志文件中(G1 Z-0.05),但这可能与其他信息位于行的中间。有没有办法捕捉最新的 Z 深度?我想我可以管理显示部分,所以我对如何捕捉变化的 Z 以始终保持当前值感兴趣。提前致谢。
该软件通过 python main.py 启动。在 GUI 中我运行剪切。发送到 arduino 的命令在终端中可见,并且也会写入 log.txt。我可以拦截终端还是跟踪日志更容易?
输出示例 从终端:“发送:G0 Z0.5” 从日志文件:发送:G1 Z-0.05 F30
我想捕捉的是 Z/z 正值和负值背后的值
答案1
给定示例输入:
Sent: G1 Z-0.05 F30
这应该捕获您想要的信息:
grep -o 'Z[^ ]*' inputfile
Z-0.05
或者,实时捕获:
tail -f inputfile | grep -o 'Z[^ ]*'