上一章讲了任务的四个命令,这一章节介绍一下查看进程的相关的命令。
什么是进程?
进程-是一个抽象的概念,他是由程序,数据集合和进程控制块三部分组成程序用于描述进程要完成的功能,是控制进程执行的指令集;数据集合是程序在执行时所需要的数据和工作区;程序控制块(Program Control Block,简称PCB),包含进程的描述信息和控制信息,是进程存在的唯一标志。linux提供了许多命令来让用户高效管理上述信息,接下来我们一个一个介绍;
1.ps
简介
ps命令:是linux命令中最基础的浏览进行的命令,能够列出系统中的运行的进程,包括进程号,cpu使用量,远程连接设备,时间等信息。
常用选项
- 参数如下: -e 显示所有 进程。 -f 全格式。 -h 不显示标题。 -l 长格式。 -w 宽输出。 a 显示终端上的所有进程,包括其他用户的进程。 r 只显示正在运行的 进程。 x 显示没有控制终端的 进程。
-
ps -ef |grep - 列出需要进程
-
ps -aux - 显示进程信息,包括无终端的(x)和针对用户(u)的进程:如USER, PID, %CPU, %MEM等
2.pstree
简介 pstree将所有的进程以树状图的形式显示出来.
常用选项:
参数说明:
-a 显示出该命令的参数, 假如这个命令进程被其他进程替换掉, 那么进程将显示在括号中 -a 选项包含有压实进程树的选项, 对于相同的进程, 会使用n*(process)的形式展显出来。
-c 关闭禁用显示结果进程树,在默认情况下,进程子树是会被压缩的。不管有多少进程名相同的进程,都会逐个显示出来。
-G 使用vt100线性描述树
-h 突空出显示当前进程的父进程并高亮显示出来,如果没有父进程那么什么都不会显示。
-H 突出显示出指定进程的父进程信息并高亮显示出来,使用方法为 pstree -H PID
-l 显示长格式命令选项,在默认的情况下,命令行最多显示宽度为132bit ,超过将不能正常显示。
-n 基于进程相同的祖先来进行排序,可以命名pid来代替进程名称 。
-p 显示所有的时程,显示结果包含进程名和时进程ID
-u 显示出用户的UID,无论何时,这个UID和进程比较UID参数,这个新的UID将在进程名后显示不同的参数。
-U 使用utf-8字符集以十进制表示,
-v 显示版本号
实例:
1、显示当前所有进程的进程号和进程ID
pstree -p
2、显示所有进程的所有详细信息, 遇到相同的进程名可以压缩显示。
pstree -a
3.pgrep
简介:pgrep用来查看被调度的进程相关的信息。
常用选项
-o:仅显示找到的最小(起始)进程号; -n:仅显示找到的最大(结束)进程号; -l:显示进程名称; -P:指定父进程号; -g:指定进程组; -t:指定开启进程的终端; -u:指定进程的有效用户ID。