如何让Linux的脚本关闭终端后继续执行

2024-12-04 14:08:01
推荐回答(3个)
回答(1):

加& 是不行的。

因为不管是后台还是前台,都是terminal 的子进程。terminal一关,父进程在推出前,会杀掉所有的子进程。


Linux 里有一些工具,可以脱钩父子进程。比如screen,ubuntu/debian用apt安装。

apt-get install screen


用法:在terminal里打

screen

然后运行你的程序。

再按

ctrl +a, ctrl +d. 

就脱钩了。可以关terminal了。


想挂钩,用

screen -r

如果有多个脱钩进程,比如

There are several suitable screens on:
8881.pts-0.Jordan(Detached)
8494.pts-0.Jordan(Detached)

用 

screen -r [pid]

比如

screen -r 8881

回答(2):

在命令行后面 加一个 &
即放到后台执行。

回答(3):

用nohup 后台执行

nohup 脚本 & 即可