Stormlord Asked: 2020-11-16 02:50:18 +0800 CST2020-11-16 02:50:18 +0800 CST 2020-11-16 02:50:18 +0800 CST 如何通过“对话框”窗口显示程序输出 772 如何将程序的输出重新路由到dialog窗口而不是stdout或stderr使用 bash? 我不想通过 using 将该输出捕获到变量中,variable=$(appname)然后通过 using 显示它dialog --msgbox。我想要运行时重新路由之类的东西,以便程序的输出在dialog生成时显示在该窗口中。不是在它完成之后。 那可能吗? 谢谢! bash dialog 1 个回答 Voted Best Answer FedKad 2020-11-16T04:06:15+08:002020-11-16T04:06:15+08:00 --progressbox选项就是您所寻求的。看这个例子: { while true ; do date ; sleep 2 ; done ; } | dialog --progressbox 30 100 它将显示打印到的数据stdout。在您的情况下,您可以将应用程序的输出通过管道传输到如下dialog命令: appname 2>&1 | dialog --progressbox 30 100 如果你想显示一个OK按钮,当输出appname完成时,你可以使用该--programbox选项。 有关详细信息,请参见手册页。
--progressbox
选项就是您所寻求的。看这个例子:它将显示打印到的数据
stdout
。在您的情况下,您可以将应用程序的输出通过管道传输到如下dialog
命令:如果你想显示一个
OK
按钮,当输出appname
完成时,你可以使用该--programbox
选项。有关详细信息,请参见手册页。