首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有跳出CLI的实用工具吗?

有跳出CLI的实用工具吗?
EN

Ask Ubuntu用户
提问于 2014-03-28 01:33:11
回答 1查看 228关注 0票数 4

让我说我有一些服务器软件。我启动它,它在stdin/stdout上提供了一个接口,我可以使用它在运行时输入命令。我希望能够通过SSH启动它,退出会话,返回并重新挂钩到stdin/stdout接口。

我在想,一定有一个简单的命令,比如nohup或&这将允许我这样做。在那里吗?

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2014-03-28 01:43:24

是的,use可以使用tmux或旧的screen。以下是它们各自的man页面的摘录:

  1. tmux:tmux是一个终端多路复用器:它允许从单个屏幕创建、访问和控制多个终端。可以将tmux从屏幕上分离出来,在后台继续运行,然后再重新附加。启动tmux时,它会创建一个带有单个窗口的新会话,并将其显示在屏幕上。屏幕底部的状态栏显示当前会话的信息,用于输入交互式命令。会话是在tmux管理下的伪终端的单个集合。每个会话都有一个或多个链接到它的窗口。窗口占据整个屏幕,可以分割成矩形窗格,每个窗格都是独立的伪终端( pty(4)手册页记录了伪终端的技术细节)。任意数量的tmux实例都可以连接到同一会话,并且任何数量的窗口都可能出现在同一会话中。一旦所有会话都被杀死,tmux就会退出。每个会话都是持久的,并且将避免意外断开(例如ssh(1)连接超时)或有意分离(使用‘C’键笔画)。可以使用$ tmux附加重新连接tmux。
  2. screen屏幕是一个全屏窗口管理器,它在多个进程之间复用一个物理终端(通常是交互式shell)。每个虚拟终端提供DEC VT100终端的功能,以及来自ISO 6429 (ECMA 48、ANSI X3.64)和ISO 2022标准(例如插入/删除行和支持多个字符集)的多个控制功能。每个虚拟终端都有一个回滚历史缓冲区和允许在窗口之间移动文本区域的复制和粘贴机制。当调用screen时,它会创建一个窗口,其中包含一个shell (或指定的命令),然后避开您的方式,以便您可以像往常一样使用该程序。然后,您可以在任何时候创建包含其他程序(包括更多shell)的新窗口(全屏),关闭现有窗口,查看窗口列表,打开或关闭输出日志,在窗口之间复制和粘贴文本,查看回滚历史记录,以任何您希望的方式在窗口之间切换等等。所有窗口都完全独立运行它们的程序。当程序的窗口当前不可见时,甚至当整个屏幕会话与用户的终端分离时,程序就会继续运行。当程序终止时,屏幕(默认情况下)会关闭包含它的窗口。如果此窗口位于前台,则显示切换到前一个窗口;如果未留下任何窗口,则屏幕退出。

这两个程序将使您能够登录到服务器,启动进程,然后注销并保持其运行。当您想要检查它时,您可以重新登录到服务器,并重新连接到正在运行的tmuxscreen会话,就好像您从未离开过一样。您可以从Ubuntu存储库安装它们:

代码语言:javascript
复制
sudo apt-get install screen

代码语言:javascript
复制
sudo apt-get install tmux

你可以在我们的姐妹网站Unix & Linux上找到一个比较好的问答节目。

票数 6
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/440107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档