1

我正在开发嵌入式 linux 系统;我的控制台是一个串行端口,在 /dev/tty0 有一个 VGA 视频输出。

我正在尝试使用“对话框”(1) 实用程序在 VGA 屏幕上显示类似菜单的显示。

我可以在控制台上获得对话框输出:

dialog --inputbox "Hello Dialog World" 10 30

我可以通过重定向在 VGA 屏幕上得到类似的东西:

dialog --inputbox "Hello Dialog World" 10 30 >/dev/tty0

但我想使用--output-fd对话框的“”参数来实现类似的结果,但我无法让它工作。

我在 bash 脚本中尝试过,例如:

exec 4>/dev/tty0
dialog --output-fd 4 --inputbox "Hello Dialog World" 10 30
exec 4>&-

但这似乎像以前一样写入控制台。

我似乎误解了--output-fd参数的操作 - 任何人都可以帮忙吗?

(实际上,我想使用 python-dialog 包装器进行对话;但在进行下一步之前,我需要了解如何使用底层对话实用程序)

4

1 回答 1

0

从手册页引用:

一些小部件,例如清单,会将文本写入对话框的输出。通常这是标准错误,但有一些选项可以改变它:“--out-put-fd”、“--stderr”和“--stdout”。

这意味着该--output-fd选项不为任何输出指定文件描述符,而只为某些小部件生成的数据指定文件描述符。

于 2013-06-19T15:41:55.407 回答