个人博客首页(点击查看详情)-- https://blog.51cto.com/11495268
1、简介
系统进程 管理操作 是一项基本功,本文 主要描述 如何 后台管理 进程服务(相关命令 暂时不会 详解)
1.1 进程(基本概念 不详细解释)
进程是程序在一个数据集合上的一次执行过程
1.2 进程查看(查看命令 不详细解释)
ps、pstree -- 静态获取进程信息
top、htop -- 动态获取进程信息
2、后台进程 创建
2.1 &
## 将任务放到后台 ,即使关闭xshell退出当前session依然继续运行,但标准输出和标准错误信息会丢失
# ./{可执行程序} &
2.2 nohup
## 将任务放到后台,关闭标准输入,前台不再能够接收任何输入(标准输入),重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭xshell退出当前session依然继续运行
# nohup ./{可执行程序} > {out_file}
2.3 nohup ... &
## 将任务放到后台,但是依然可以使用标准输入,前台能够接收任何输入,重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭xshell退出当前session依然继续运行
# nohup ./{可执行程序} > {out_file} 2>&1 &
2.4 ctrl-z( suspend foreground process )
发送 SIGTSTP 信号给前台进程组中的所有进程,常用于挂起一个进程,而并非结束进程,用户可以使用使用fg/bg操作恢复执行前台或后台的进程;fg命令在前台恢复执行被挂起的进程,此时可以使用ctrl-z再次挂起该进程,bg命令在后台恢复执行被挂起的进程,而此时将无法使用ctrl-z 再次挂起该进程
3、后台进程 管理
3.1 后台进程 查看
## jobs 只能查询 当前 终端 后台任务
## 一列显示的为被放置后台 job 的编号
## 第二列的 + 表示最近(刚刚、最后)被放置后台的 job
## - 表示倒数第二(也就是在预设之前的一个)被放置后台的工作
## 最后一列表示该进程执行的命令
# jobs
[1] Running nohup ./test.sh > wl_nohup1 2>&1 &
[2] Running nohup ./test.sh > wl_nohup2 2>&1 &
[3] Running nohup ./test.sh > wl_nohup3 2>&1 &
[4] Running nohup ./test.sh > wl_nohup4 2>&1 &
[5] Running nohup ./test.sh > wl_nohup5 2>&1 &
[6]- Running nohup ./test.sh > wl_nohup6 2>&1 &
[7]+ Stopped ./test.sh
3.2 后台进程 终端运行
## 将后台进程 放置 前端终端执行
## fg %{num}
## fg [%jobnumber]
# fg %7
./test.sh
... ...
^Z
[7]+ Stopped ./test.sh
4、后台进程 运行
## 后台 继续 运行
## num 为 jobs 进程对应的 序列号
## bg [%jobnumber]
# bg %{num}
5、后台进程 关闭
## 关闭 进程
## kill -signal %{jobnumber}
## kill -9 %{num}
原文地址:https://blog.51cto.com/11495268/2399271
时间: 2024-10-22 03:07:49