Possible Duplicate:
Prevent a background process from being stopped after closing SSH client

我有一个项目需要很多时间才能完成.

推荐答案

假设有一个程序在前台运行,press ctrl-Z,那么:

[1]+  Stopped                 myprogram
$ disown -h %1
$ bg 1
[1]+ myprogram &
$ logout

如果只有一个作业(job),则不需要指定作业(job)编号.只用disown -hbg.

以上步骤的说明:

按下ctrl-Z键.系统将暂停正在运行的程序,显示作业(job)编号和"已停止"消息,并返回bash提示符.

你输入disown -h %1命令(这里,我使用了1,但你会使用Stopped消息中显示的作业(job)编号),它标记作业(job),因此它会忽略SIGHUP信号(不会通过注销停止).

接下来,使用相同的作业(job)编号键入bg命令;这将在后台恢复程序的运行,并显示一条消息确认.

您现在可以注销,它将继续运行..

Linux相关问答推荐

无法在Raspberry PI 3 Model B上分配256TB的虚拟内存

在树莓派内核中找不到arch/arm/kernel/calls.S

Ansible-删除两个注释之间的代码块(包括注释本身)

Shell 脚本程序 - 从日志(log)文件中过滤磁盘空间利用率超过 80% 的行

Linux 上 Ada 任务优先级的语义是什么?

Linux上Kvaser数据库编辑器的等效工具

我可以阅读 Linux 内核的哪些部分以获得乐趣?

如何判断 Linux 机器是否支持 AVX/AVX2 指令?

关于 putenv() 和 setenv() 的问题

如何测试是否存在两个文件?

Linux 上的 C++ 开发 - 我从哪里开始?

在 Ubuntu 上运行自包含的 ASP.NET Core 应用程序

如何获取WiFi网络接口的MAC地址?

通过 VM 的 Centos - 镜像列表中没有 URL

使用 ssh 判断远程主机上是否存在文件

rename() 是原子的吗?

如何安装python开发者包?

/dev/random 非常慢?

sed - 如何使用 sed 进行正则表达式组

为嵌入式 Linux 设备实施更新/升级系统