常用进程查看工具

进程是我们学习Linux中常常接触的概念,他是程序被运行起来的一种表现形态。

了解进程的工作状态,管理进程的工作状态,可以让我们更清楚的知道,系统正在做什么,整体的进度是怎么样的。

想要了解进程的工作状态,我们就需要借助一些常用的工具来查看,想要对进程进行管理,我们也需要工具来实现。下面我们一起来看一看常用的查看进程工具有哪些,这些工具是如何使用的,有什么特点等等。

常用的进程查看工具有以下几种:

pstree ps pidof pkill  pgrep top htop  

首先要说的第一个就是pstree

这个命令最常用的方法就是pstree,后面不跟任何参数。这是一个将系统中的所有进程,以进程树形态显示出来的工具,让我们可以拥有一个全局的眼光,去查看系统的进程。


常用进程查看工具



这就是pstree的显示结果,相信通过以上这张图,能让我们对pstree的显示方式有一个比较直观的了解。我们可以很容易的了解到系统一共运行了哪些进程,各个进程分别 包含了哪些线程等等。

接下来介绍一下ps这个命令的使用。

这或许是我们使用频率最高的查看进程的命令了。

需要注意的是,ps这个命令,工作方式有点类似“snapshot”,当我们每次执行一次ps的时候,ps命令就会将系统当前的进程的运行状态做一个静态“snapshot”,然后显示给我们,这样的结果就是,有可能我们每次执行ps的结果,都是不一样的。

按我的理解,ps是将动态的系统的进程的状态的某个时间点的状态,静态的显示给我们。

来看看ps命令常跟的选项,以及各个选项分别是什么意思:

ps支持两种风格的显示方式,一种是BSD风格,一种是UNIX风格。

BSD风格的选项:

ps a 显示所有与终端相关的进程

ps x 显示所有与终端无关的进程

ps u 显示进程所有者的相关信息

ps f 显示进程的父进程

ps o options的意思,即有选择性的显示

 

其实这些选项都是组合着用的,最常见的组合方式有以下几种:

ps aux

ps auxf

ps axo  [pid,euid,ruid,tty,ppid,%cpu,%mem]

 

ps aux 显示结果:

常用进程查看工具


 

ps auxf 

常用进程查看工具


ps axo  定义要显示的选项的显示结果:

常用进程查看工具


 

说完BSD风格,再来说说UNIX风格的显示。

ps  -e  e既是extend的意思,扩展显示

ps  -f  显示完整格式

ps  -F  显示更完整的格式

ps  -H  hierarchy,以层级结构的方式显示

ps  -U 显示以指定的用户运行的程序

 

其实这些选项也是组合着用的,最常用的莫过于

ps -eFH

 

常用进程查看工具


 

关于ps的显示结果,在其第一行的各项参数,我们有必要了解一下,这样我们才能对进程做更深入的理解。

UID: 进程的发起者

PID:通过此前的用户管理章节的学习,我们已经知道,计算机是靠数字来标识这些不同的进程的,进程编号存在的意义也是一样的,人能记住进程名,但计算机可记不住,它只能记数字。

PPID: 这个多出来的P就是parent的意思。

C: 即CPU,运行在哪颗CPU核心上。

%CPU: 分配到的CPU的时间片百分比

%MEM: 实际占用的内存百分比

VSZ:虚拟内存集

RSS:常驻内存集

START:启动时间

TIME:运行占据CPU的累计时长

COMAND: 由哪个命令运行起来

STAT:进程的运行状态

常见的进程的运行状态有:

RRUNING

Sinterruptable sleep 可中断睡眠

Duninterruptable sleep 不可中断睡眠,(一般都是在等待IO结束发生)

TSTOP

Zzombie 僵尸进程

+:前台运行的进程

l :多线程进程

N:低优先级进程

< :高优先级进程

s:创建会话者,通常都为bash程序

 

 

pidof  命令的使用:

从字面的意思即可以看出,这是一个获取进程的PID的命令。后边跟的参数当然是进程名啦。

我们可以根据一个进程的名字,得知这个进程的PID是多少,并且这个程序并发运行了多少个进程。

如下图可以看出sshd这个服务端程序发起了两个进程,分别为54221824

常用进程查看工具


 

再来说说pgreppkill

之所以放在一起说,是因为这两个命令的使用几乎一样。

语法格式都为:

pgrep  [options]  pattern

pkill   [options]  pattern

常见选项:

pgrep | pkill

-u  uid  实际运行的用户

-U  uid  真实生效的用户

-t  terminal   显示指定终端相关的进程

 

pgrep  -l  显示出进程名

pgrep  -a  显示完整格式的进程名

 

 

 

接下来要说的就是top命令了。top的显示结果非常强大,信息非常丰富。

并且,之前说的pstree , ps , pidof ,pgrep ,pkill 都是静态显示,而top却是动态显示。

 

常用进程查看工具

 

信息有够丰富!

相信刚才对显示的参数的介绍,大家也能触类旁通的理解top显示的参数分别是什么意思了。

我们挑两个重要的来说一说。

load vaerage:  这个选项显示的是过去1分钟,五分钟,十五分钟系统的负载,是一个衡量系统负载是否正常的非常重要的参数。当然啦,uptime命令也能显示类似的信息。

CPUs)相关的参数的解析;

us:用户空间程序占据的CPU百分比

sy: 内核空间程序占据的CPU百分比

ni: 调整NICE值占据的时间

id:空闲比例

wa:等待IO完成的时间

hi: 硬中断,通常由磁盘这个硬件发起

si: 软中断,通过由软件发起

st:被虚拟化技术偷走的时间

top工具的使用:

默认情况下,这个工具是按占据CPU的百分比排序的。

top  -d 调整刷新间隔

top  -n  显示多当次后退出

当然啦,top虽然已经够强大,但黑白看着未免单调,于是诞生了一个界面相对比较“华丽”的htop,参数与top大同小异。

可以看看htop的效果图,要显眼许多。

常用进程查看工具

 

 

当然啦,无论工具界面如何,我们都无需太过在意,毕竟linux大多数情况下都是比较单调,强调实用的,能将任何一款工具用得熟练,获得我们想要的信息,才是最重要的。

以上是常见的进程的查看工具的使用,希望对大家有些帮助。

原创文章,作者:old_radish,如若转载,请注明出处:http://www.178linux.com/75090

(0)
old_radishold_radish
上一篇 2017-05-08
下一篇 2017-05-09

相关推荐

  • 第三周作业

      1. 列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut -d' ' -f1 | sort -u root 2. 取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# who | tail -1 roo…

    Linux干货 2016-12-26
  • ubuntu kylin虚拟机安装KVM

    1.确定物理机CPU是否支持虚拟化    查看方法1:计算机->属性->处理器(Inter(R) Core(TM) i5-2450M),然后去网上查看自己的电脑CPU是否支持虚拟化,    地址http://ark.intel.com/zh-cn/找到自己CPU的信息,虚拟化技术后是否显示为yes,如果是n…

    Linux干货 2016-10-15
  • ip子网划分

    ip子网划分 人们为了通信方便,给每台计算机分配了一个类似我们电话号码一样的标识地址。IP就好比一个人的指纹一样,在INTERNET中是独一无二的(公网中)。我们可以通过ip查询到使用该ip的主机。 现在的IP分为ipv4和ipv6。前者是32位二进制组成,为了防止IP不够用由此研发出后者ipv6,ipv6是由128位二进制组成。ipv6中包含ip的数量相当…

    Linux干货 2017-07-01
  • vsftpd基于mysql存储认证(centos7)

    (1)首先开发包组和服务器平平台开发包组 (2)yum安装需要的依赖包 (3)编译安装pam_mysql模块 (4)配置mysql,并添加mysql中的vsftpd进程用户,且创建vsftpd数据库,并将vsftpd数据库授权给vsftpd用户,且创建vsftpd.users表,并在表中添加用户tom (5)创建vsftpd要上传和下载的URL (6)创建基…

    Linux干货 2016-10-15
  • 计算机的发展及组成

    计算机发展 计算机(Computer):俗称电脑,是一种能接收和存储信息,并按照存储在其内部的程序对海量数据进行自动、高速地处理,然后把处理结果输出的现代化智能电子设备。 1946年,世界上诞生了第一台计算机,用于军事,计算弹道。 1946年数学家冯.诺依曼提出冯诺依曼体系结构,即所有计算机由运算器、控制器、存储器、输入设备、输出设备组成,所有遵循冯.诺依曼…

    Linux干货 2017-07-13
  • root用户密码破解

    方法一:进入单用户模式破解root密码 (1)编辑grub菜单(选定要编辑的title,而后使用e命令) (2)在选定的kernel后附加 1,s,S或single都可以 (3)在kernel所在行键入"b"命令即可进入单用户模式 (4)运行passwd命令修改root用户密码 并重启 (5)输入密码即可登录 方法二:进入救援模…

    Linux干货 2016-09-15