加& 是不行的。
因为不管是后台还是前台,都是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
在命令行后面 加一个 &
即放到后台执行。
用nohup 后台执行
nohup 脚本 & 即可