我有一台没有鼠标或键盘的 PC,但它连接到显示器。我想知道是否可以在特定 tty(如 tty1)中远程打开程序(如通过 SSH),以便我能够在显示器上查看输出。
答案1
似乎下面的问题可以回答您的问题:https://stackoverflow.com/questions/8994593/how-to-reroute-stdout-stderr-back-to-dev-tty
exec >/dev/tty 2>&1
应该这样做
对于只有 > /dev/tty1
命令之后的一些命令(如 David Schwartz 所述)也会起作用
答案2
你可以使用 Linux虚拟控制台为此。每个虚拟控制台都是一个单独的文本模式或图形显示器、键盘和鼠标,全部共享计算机的实际显示硬件。
每个虚拟控制台都可以通过 tty 设备访问/dev/ttyN
,其中 N 为 1、2 等。/dev/tty1
表示虚拟控制台 1。如果您的计算机连接了键盘,则按 Alt-F1 可进入控制台 1,按 Alt-F2 可进入控制台 2,依此类推(如果当前显示的控制台正在运行 X,则按 Ctrl-Alt-FN)。由于您没有键盘,因此您必须使用一组与虚拟控制台配合使用的程序。
简而言之:
some-program > /dev/tty1 2>&1
将程序的输出重定向到虚拟控制台 1。如果控制台 1 不在显示器上,您可以切换到它:
chvt 1
更好的方法是运行openvt
在虚拟控制台上启动命令:
openvt -s some-command
这将选择一个新的虚拟控制台,使其在屏幕上可见,并运行指定的命令。Openvt 还有其他选项,因此请查看文档。
其他有用的命令是fgconsole
显示当前显示的控制台的编号,以及deallocvt
清理未使用的控制台。
所有这些命令可能都需要超级用户权限才能运行。