【发布时间】:2018-11-26 07:46:01
【问题描述】:
我有一些代码可以在服务器上自动生成机器学习图,并在适当的时间将图发送到 IoT 客户端进行显示。
数据管道有效。但是,我尝试在推送新情节时近乎实时地更新图像是行不通的。
目前我的做法是:
user@client:~/data_viz $ watch -n3 feh -F plot0.png --zoom 200
feh 是一些任意的轻量级 Linux 图像查看器。
问题在于,即使文件 (plot0.png) 被成功覆盖,查看器也不会更新,直到您将其杀死并重新启动它。
更新:我使用下面的 Bash 方法实现了世界上最糟糕的版本。现在唯一的问题是它每秒都会刷新桌面,如果我不修复它无疑会导致癫痫发作......
$ watch -n2 sudo bash watch.sh
watch.sh 在哪里
#!/bin/bash
i="0"
while [ $i -lt 4 ]
do
pkill feh
sleep 1
feh -F plot0.png --zoom 200&
sleep 1
pkill feh
done
即使使用 Esc 和 ctrl+c,似乎也无法真正打破无限循环。我希望循环是无限的,但我也希望能够在必要时中断它。
【问题讨论】:
-
嗯,你的想法是对的。一旦您在
feh(这是一个出色的工具)中打开图像,它本身(就像几乎所有其他图像查看器/编辑器一样)不会监视源文件中的更改。但是,feh确实提供了-R, --reload int选项,可以在给定的秒数后自动重新加载图像。 (见:man 1 feh) -
需要添加秒数
-R 5(5秒刷新) -
好的,当然,给我一分钟,我会写下来
:)