有没有办法在 bash 中退出进程而不退出它?

kwa*_*gjj 1 bash

例如,我打字sudo apt-get update,然后几分钟内就会出现一长串内容。

如果我想避免看到这个令人厌烦的更新并再次控制 bash 命令行(不退出原始命令),

有没有热键或类似的东西来做到这一点?

Mic*_*mer 5

您可以使用命令apt-get暂时停止Ctrl-Z,然后在后台重新启动作业bg

$ apt-get foo bar ...
^Z
bash: suspended apt-get
$ bg
bash: continued apt-get
$
Run Code Online (Sandbox Code Playgroud)

但是,当您这样做时,您将继续从apt-get终端获取输出。在您已经启动命令之后(除了使用调试器进行肮脏的黑客攻击之外),这不可能停止的。不过,您可以在此处运行其他命令。当作业停止时,它仍然处于活动状态但未运行,因此它不会取得任何进展,但您也不会看到任何输出。

您可能会发现有用的是screenortmux命令。它们允许您在同一个物理终端内使用不同的终端运行多个会话。如果您使用的是 X,则可以运行其他终端模拟器,或者在当前的选项卡中创建一个新选项卡。无论哪种方式,您都可以apt-get update在一个 shell 中运行,然后切换到另一个以继续工作。