会话:
打开一个终端窗口,在里面输入指定和计算机的临时交互称为一次会话。
会话的特点:
- 在会话窗口中启动的进程是捆绑在这个会话窗口,如果这个窗口管理,在这个窗口中启动的相关进程也会随之终止。
例如:
- 使用ssh连接到远程主机,在ssh中执行对应的命令,如果ssh会话窗口关闭,那么执行命令启动的进程这些也会随之终止。
解决会话窗口和进程捆绑的方法:
- 将会话与窗口"解绑",窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口
会话窗口管理
screen
利用screen 可以实现会话管理,如:新建会话,共享会话等
screen命令常见用法:
- 创建screen会话
screen –S [SESSION]
例如:
screen -S myworld #创建以myworld为名字的screen会话
- 暂离会话,后台挂起
Ctrl+a d
- 返回会话
screen -r myworld #返回以myworld为命令的screen会话
- 删除,退出会话
exit #
- 列出所有screen会话
screen -ls
Linux 作业管理
-
前台作业:通过终端启动,且启动后一直占据终端
-
后台作业:可通过终端启动,但启动后即转入后台运行(释放终端)
让作业运行于后台:
-
运行中的作业: Ctrl+z(放到后台以后程序就不运行了,需要手动启动)
-
尚未启动的作业: COMMAND &
说明:
后台作业虽然被送往后台运行,但其依然与终端相关;退出终端,将关闭后台作业。如果希望送往后台后,剥离与终端的关系
-
nohup COMMAND &>/dev/null &
-
screen;COMMAND
-
tmux;COMMAND
查看当前终端所有作业:
#jobs 是查看当前终端的后台作业。
jobs
作业控制:
-
fg [[%]JOB_NUM]:把指定的后台作业调回前台
-
bg [[%]JOB_NUM]:让送往后台的作业在后台继续运行
-
kill [%JOB_NUM]: 终止指定的作业