我有两台 Ubuntu 12.04 和 13.10 桌面版本的计算机。在 12.04 上,我打开了终端并在其中运行了进程。该过程正在显示一些状态信息,并允许即时更改一些设置。因此,我想从另一台 PC 访问 12.04 并管理该过程。
我已经使用 SSH 成功连接到 PC,但我无法找到如何在终端中查看进程。
我相信您正在寻找的工具是screen。请注意,由于它的工作方式,它会中断回滚。
设置如下:
屏幕 -mS myscreen
附上如下:
屏幕 -x 我的屏幕
连接后,您或您的伴侣就可以与屏幕互动。
从屏幕上分离如下:
Ctrl-A D
不要倒退,否则您会退出屏幕并带走您的伴侣!如果您在不分离的情况下关闭窗口,它也会关闭您伙伴的屏幕。
列出活动屏幕:
屏幕 -ls
附加到两个类似命名的屏幕之一:
屏幕 -x 12345 .myscreen
其中12345是屏幕的 PID(您从 screen -ls 获得)
找到了这个的来源! http://wiki.networksecuritytoolkit.org/nstwiki/index.php/HowTo_Share_A_Terminal_Session_Using_Screen
小智 5
如果您尝试访问诸如 ftp 或游戏服务器之类的交互式进程,则只能从创建它的终端对其进行控制。也就是说,有一个名为 screen 的程序可以用来创建一个可以在其他终端内打开的虚拟终端。
安装:
sudo apt-get install screen
Run Code Online (Sandbox Code Playgroud)
要启动屏幕终端:
screen -S nameOfScreen
Run Code Online (Sandbox Code Playgroud)
或者,如果您想在不立即连接的情况下创建一个屏幕:
screen -dmS nameOfScreen
Run Code Online (Sandbox Code Playgroud)
要立即在屏幕内启动程序,请在最后添加命令:
screen -dmS ftpstuff ftp [options for ftp]
Run Code Online (Sandbox Code Playgroud)
您还可以重新连接:
screen -r nameOfScreen
Run Code Online (Sandbox Code Playgroud)
并在不进入屏幕的情况下运行命令(对脚本有用):
screen -S gameServer -p 0 -X stuff "alert We're running a backup, expect a bit of lag.$(printf \\r)"
Run Code Online (Sandbox Code Playgroud)
您可以通过按 Ctrl+A 后按 Ctrl+D 来断开与屏幕的连接。尝试 Ctrl+A 后跟 ? 如需更多帮助,或阅读手册页。
| 归档时间: |
|
| 查看次数: |
9718 次 |
| 最近记录: |