如何在终端中打开应用程序并将其分离?

我在我的航站楼打开了开罗docker: open cairo-dock ,但是如果我关闭了终端,它会随之而来。 无论终端如何,我怎样才能保持开放状态?

nohup是一个忽略HUP(挂断)信号的POSIX命令。 按照惯例,HUP(挂断)信号是终端根据注销过程发出警告的方式。 通常进入终端的输出将转到名为nohup.out的文件(如果尚未重定向)。 nohup是一个低级实用程序,只是配置一个忽略信号的命令。 如下所示,nohup远不是一个全function的批处理系统,它解决了异步运行程序的所有问题。

见手册:

 man nohup 

例:

 nohup cairo-dock & 

另一种方式: disown

在bash shell中,disown builtin命令用于从作业表中删除作业,或者标记作业,以便在父shell收到它时(例如,如果用户注销),不会向它们发送SIGHUP信号。

例如:

 cairo-dock & disown 

我个人使用屏幕来做这种事情。

 screen -d -m -S cairo_session open cairo-dock 

这有什么好处,如果你想终止cairo-dock,你可以重新连接到屏幕会话并终止它。

 screen -S cairo_session -X quit 

屏幕还有其他用途。 这是一个终端多路复用器。