0

背景资料:

  • 我正在尝试使用树莓派设置远程显示。
  • 目前我正在使用 fbi(帧缓冲区图像查看器)来显示图像。
  • 该设备将通过 ssh 或 Web 界面进行控制——不确定是哪个,但绝对不是来自实际设备。

问题是我似乎找不到一种简单的方法来“清理”远程退出进程,清除屏幕并不产生错误。如果按下 q 按钮,fbi 程序将退出,但这似乎对 ssh 没有好处。理想情况下,我更喜欢一个不那么混乱的解决方案,然后每次都必须在杀死它之前查找 pid。我对使用另一个程序的想法持开放态度,但是我无法在 Xorg 中运行它。

我试过了:

  • Grep-ing pid 并发送kill -sigterm,但它要么不退出,要么不清除屏幕
  • echo "q" > /proc/[pid]/fd/0 - 我尝试的所有迭代要么被拒绝访问,要么什么也没发生

有任何想法吗?

4

2 回答 2

0

如何在没有消息的情况下杀死进程?
在一个终端中,我启动了一个进程:

# sleep 100

现在终止进程,没有消息并且不知道 pid:

# kill -13 (pgrep sleep)

如何远程清屏?
首先,获取要清除的终端的 tty #:

# tty
/dev/pts/1

现在从另一个终端:

# printf '\033c' > /dev/pts/1
于 2016-01-05T07:26:58.230 回答
0

在没有看到您的代码的情况下,解决方案可能是使用 fbi 从另一个终端仅在 fb0 上显示图像:

fbi -T 1 -noverbose -d /dev/fb0 image.png

然后只需清除整个帧缓冲区(fb0):

dd if=/dev/zero of=/dev/fb0

或者更好的是,只需将“空白”图像写入 fb0 以“清除”它。

于 2016-01-26T13:04:16.997 回答