保持程序在终端中运行


8

因此,我很清楚nohup命令并带有后缀&以确保它们进入后台。

但是,如果我运行图形应用程序-有时似乎都不使用它。那么,我可以在程序/命令前添加前缀以确保程序/命令在终端关闭后继续运行吗?

Answers:


9

如果要在关闭终端窗口时使应用程序继续运行,请执行以下操作:

nohup chromium-browser &

您需要nohup&

  • nohup表示在外壳关闭后保持此进程/命令运行。
  • &表示将此进程/命令放在后台,因此它不会阻塞外壳(因此您可以将其用于其他用途。

5

通过&运算符在后台运行程序时,该程序仍会附加到您的会话中,并且可以通过fg,bg,jobs和disown进行控制。

我在nohup上也遇到了一些问题,但您可能正在寻找不喜欢的东西。

当您在后台运行程序时,它具有工作ID:

gedit &
[1] 5647

方括号[]中的数字很有趣。要从会话中分离它,请disown %n使用该编号运行。对于以上示例:

disown %1

现在,您可以安全地退出终端,并且该过程不会终止。


2

对于图形应用程序,只需执行以下操作即可(至少对我有用)

chromium-browser&

对于终端应用程序,应使用screentmux


-1,因为这对于在关闭终端后继续运行的要求不起作用。+1用于提示屏幕/ tmux。
gertvdijk 2012年

@gertvdijk有趣,对于GUI应用程序它对我有用。刚刚使用bash进行了测试。我曾经遇到过zsh会抱怨的情况,然后尝试退出...
jrg 2012年

我正在使用Konsole,并在其中运行Kate &。Kate将在关闭Konsole后随后关闭。
gertvdijk 2012年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.