1、ps是什么?
有时候我们需要对操作系统的当前进程进行监测和控制,这时候我们需要查看当前进程,以此了解当前进行的情况,这个时候我们就需要使用到ps命令,ps命令就是一种最基本的进程查看命令。使用改命令可以查看当前有哪些进程正在运行和运行状态、进程是否结束,有没有僵尸进程,进行资源占用情况等等,通过该命令可以看到进程的大部分信息。
ps是显示瞬间进程的状态,并不动态连续;如果想对进程进行实时监控应该用top命令。
基本参数:
-A:所有的进程均显示出来,与-e具有同样的效用;-a:显示现行终端机下的所有进程,包括其他用户的进程;-u:以用户为主的进程状态;x:通常与a这个参数一起使用,可列出较完整信息。输出格式规划:
l:较长、较详细的将该PID的的信息列出;j:工作的格式(jobsformat)-f:做一个更为完整的输出。下面我们就对该命令进行实操,看一下不同参数都有哪些效果。
鸟哥的Linux私房菜基础学习篇第四版京东月销量好评率99%无理由退换京东配送官方店¥购买2、不加参数执行ps命令会输出什么?
这是ps命令最基本的使用方式,下图是在控制台执行ps后的输出结果。
结果默认会显示4列信息,下面分别解释一下这4列的含义:
PID:运行着的命令(CMD)的进程编号TTY:命令所运行的位置(终端)TIME:运行着的该命令所占用的CPU处理时间CMD:该进程所运行的命令这些信息在显示时未排序。
3、如何显示所有当前进程?
-a参数,-a代表all。
-x参数会显示没有控制终端的进程。
故我们向下面这样使用:
$ps-ax
执行后结果形如下图:
#这个命令执行结果可能很长,不方便查看,这时可以结合less命令和管道来使用。
使用方式如下:
$ps-ax
less
4.如何根据进程的用户进行信息过滤呢?
在某些情况下我们需要查看特定用户下的进程情况,我们可以使用-u参数。
比如我们要查看用户pungki的进程,可以通过下面的命令:
$ps-upungki
5、如何通过cpu和内存使用来过滤进程?
有时候我们需要查看哪些进程占用了你的资源,就需要将结果按照CPU或者内存用量来进行筛选。要做到这一点我们可以结合aux参数来显示全面的信息。
使用方式如下:
$ps-aux
less
默认的结果集是未排好序的。可以通过--sort命令来排序。
5.1根据CPU使用率来升序排序
$ps-aux--sort-pcpu
less
5.2根据内存使用率来升序排序
$ps-aux--sort-pmem
less
5.3我们也可以将它们合并到一个命令,并通过管道显示前10个结果:
$ps-aux--sort-pcpu,+pmem
head-n10
6、如何通过进程名和PID进行过滤呢?
如果我们要根据进程的名字来查看进行,可以使用-C参数,后面跟你要找的进程的名字。比如想显示一个名为getty的进程的信息,就可以使用下面的命令。使用方式如下:
$ps-Cgetty
如果想要看到更多的细节,我们可以使用-f参数来查看格式化的信息列表:
$ps-f-Cgetty
7、如何根据线程来过滤进程呢?
有时候我们需要查看指定进程的线程,这时候可以使用-L参数,后面加上特定的PID。使用方式如下:
$ps-L
8、如何树形的显示进程?
有时候希望以某种特定的格式显示进程信,可以使用-axjf参数。使用方式如下:
$ps-axjf
或者可以使用另一个命令。
$pstree
9.如何显示安全信息?
有时候我们需要知道当前都有谁登录你的服务器,可以使用ps命令加上相关参数:
$ps-eopid,user,args
参数-e显示所有进程信息,-o参数控制输出。Pid,User和Args参数显示PID,运行应用的用户和该应用。
能够与-e参数一起使用的关键字是args,cmd,