Linux进程与任务管理详解

一、程序与进程

1.1 程序和进程的关系

  • 程序
    保存在硬件,光盘等介质中的可执行的代码和数据
    静态保存的代码
  • 进程
    在CPU及内存中运行的程序代码
    动态执行的代码
    父、子进程
    每个程序可以创建一个或多个进程

1.2 查看进程信息

1.2.1 ps命令

作用:查看静态的进程统计信息

[root@localhost~]# ps aux
[root@localhost~]# ps -elf

常用选项

选项 说明
a 显示当前终端下的所有信息
u 显示以用户为主的格式显示进程信息
x 显示当前用户在所有终端下的进程信息
-e 显示进程内的所有信息
-l 使用长格式信息进程信息
-f 使用完整格式显示进程信息

1.2.2 top命令

作用:查看CPU和内存占用率较高的排名显示动态信息

[root@localhost~]# top

1.2.3 pgrep命令

作用:查看进程信息

[root@localhost~]# pgrep 选项  对象

常用选项

选项 说明
-l '“xxx” 输出过程名中包含xxx的进程及进程号
-U aaa 输出由用户aaa运行的进程及进程号
-t pts/0 输出pts/0终端上运行的进程及pid号

1.2.4 pstree命令

作用:查询进程树

[root@localhost~]# pstree -acp

常用选项

选项 说明
a 完整命令信息
u 列出对应的用户名
p 列出其对应的pid号

二、进程的操作

2.1 进程的启动方式

2.1.1 手工启动

  • 前台启动
    用户输入命令,直接执行程序。
  • 后台启动
    在命令行尾加入“&”符号。

2.2.2 调度启动(计划任务)

at命令
作用:使用at命令,执行一次性计划任务。

[root@localhost~]# at HH:MM yyyy-mm-dd
[root@localhost~]# atq  ## 查看未执行的任务
[root@localhost~]# atrm 1   ## 删除第二条任务

crontab命令
作用:按照预先设置的时间周期(分钟、小时、天…)重复执行用户指定的命令操作。

crontab -e    ## 进入编辑任务计划
crontab -l    ## 查看任务计划
crontab -r    ## 删除任务计划

crontab任务配置的格式:
在这里插入图片描述
时间数值的特殊表示方式:

字符 表示
* 表示该范围内任意时间
表示间隔的多个不连续时间点
- 表示一个连续的时间范围
/ 指定间隔的时间频率

crontab命令属于周期性计划任务

主要的设置文件有:

属性 文件或目录地址
全局配置文件 /etc/crontab
系统默认的设置 /etc/cron.*/
用户定义的设置 /var/spool/cron/用户名

2.2 终止进程的运行

ctrl+c组合键

终端正在执行的命令

ctrl+z组合键

将当前任务挂起,即调入后台并停止运行

kill、killall命令

kill用于终止指定PID号的进程
killall用于终止指定名称的所有进程
-9选项用于强制终止

pkill命令

根据特定条件终止相应的进程

常用选项

选项 说明
-U 根据进程所属的用户名终止相应的进程
-t 根据进程所在的终端终止相应的进程

2.3 查看与恢复进程

jobs命令

查看主语后台的任务列表

fg命令

将后台任务恢复到前台运行,可指定任务序号

猜你喜欢

转载自blog.csdn.net/weixin_50344820/article/details/109191578