创建后台进程的必要性
在终端中创建的子进程会在终端关闭后接收到SIGHUP信号,进而随着终端进程的结束而退出。但有些时候我们需要创建一些后台进程执行长期的任务,且在终端创建进程后可关闭终端,创建的后台进程不受影响,继续执行任务直至结束。
终端创建后台进程的方法
假设我们有一个Python脚本demo.py
或Shell脚本demo.sh
,可简单执行如下命令创建后台进程执行脚本命令而不是前台进程。以执行Python脚本或Shell脚本为例,分别输入以下命令:
nohup python demo.py &
nohup sh demo.sh &
nohup
命令创建的进程会在终端关闭后忽略SIGHUP信号,使用&
符号将创建后台运行的进程。
后台进程创建成功后,即可关闭当前终端,可通过如下命令查看对应后台进程的PID:
ps -ef | grep demo
如需终止后台进程,输入命令kill pid
即可。