我不确定我是否正确地表达了这个问题,但假设我打开了两个虚拟终端,如果我输入ls
其中一个,我会在它们两个中获得目录的内容(第二个)一个不必是可写的,它只需要显示第一个的标准输出)。我将如何实现这一目标?
正如提到的 geekosaurscreen
会做你需要的(以及更多)。
首先,为方便起见,在您的第一个终端中创建一个命名的屏幕会话:
$ screen -S foo
Run Code Online (Sandbox Code Playgroud)
其次,附加到第二个终端中的屏幕会话:
$ screen -x foo
Run Code Online (Sandbox Code Playgroud)
您可以使用它script
来执行此操作。
例如,如果您想将所有输出复制到/dev/tty1
您将运行
script -f /dev/tty1
Run Code Online (Sandbox Code Playgroud)
从那时起,您键入的任何内容,所有命令输出都将复制到/dev/tty1
.
script
启动另一个 shell,所以当你完成后,你可以输入exit
end script
。
这-f
是为了使其实时。Othewise/dev/tty1
只会在显示完整行时看到输出(当将换行符写入 tty 时)。