如何在Linux中查看所有正在运行的进程

作者&投稿:郦素 (若有异议请与网页底部的电邮联系)
如何在Linux中查看所有正在运行的进程~

名称:ps
使用权限:所有使用者
使用方式:ps [options] [--help]
说明:显示瞬间行程 (process) 的动态
参数:ps的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
-A 列出所有的进程
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程

############################################################

常用参数:

-A 显示所有进程(等价于-e)(utility)
-a 显示一个终端的所有进程,除了会话引线
-N 忽略选择。
-d 显示所有进程,但省略所有的会话引线(utility)
-x 显示没有控制终端的进程,同时显示各个命令的具体路径。dx不可合用。(utility)
-p pid 进程使用cpu的时间
-u uid or username 选择有效的用户id或者是用户名
-g gid or groupname 显示组的所有进程。
U username 显示该用户下的所有进程,且显示各个命令的详细路径。如:ps U zhang;(utility)
-f 全部列出,通常和其他选项联用。如:ps -fa or ps -fx and so on.
-l 长格式(有F,wchan,C 等字段)
-j 作业格式
-o 用户自定义格式。
v 以虚拟存储器格式显示
s 以信号格式显示
-m 显示所有的线程
-H 显示进程的层次(和其它的命令合用,如:ps -Ha)(utility)
e 命令之后显示环境(如:ps -d e; ps -a e)(utility)
h 不显示第一行

############################################################

ps命令常用用法(方便查看系统进程)

1)ps a 显示现行终端机下的所有程序,包括其他用户的程序。
2)ps -A 显示所有进程。
3)ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
4)ps -e 此参数的效果和指定"A"参数相同。
5)ps e 列出程序时,显示每个程序所使用的环境变量。
6)ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
7)ps -H 显示树状结构,表示程序间的相互关系。
8)ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
9)ps s 采用程序信号的格式显示程序状况。
10)ps S 列出程序时,包括已中断的子程序资料。
11)ps -t  指定终端机编号,并列出属于该终端机的程序的状况。
12)ps u  以用户为主的格式来显示程序状况。
13)ps x  显示所有程序,不以终端机来区分。
最常用的方法是ps -aux,然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。

############################################################

运行 ps aux 的到如下信息:

root:# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
smmsp 3521 0.0 0.7 6556 1616 ? Ss 20:40 0:00 sendmail: Queue runner@01:00:00 f
root 3532 0.0 0.2 2428 452 ? Ss 20:40 0:00 gpm -m /dev/input/mice -t imps2
htt 3563 0.0 0.0 2956 196 ? Ss 20:41 0:00 /usr/sbin/htt -retryonerror 0
htt 3564 0.0 1.7 29460 3704 ? Sl 20:41 0:00 htt_server -nodaemon
root 3574 0.0 0.4 5236 992 ? Ss 20:41 0:00 crond
xfs 3617 0.0 1.3 13572 2804 ? Ss 20:41 0:00 xfs -droppriv -daemon
root 3627 0.0 0.2 3448 552 ? SNs 20:41 0:00 anacron -s
root 3636 0.0 0.1 2304 420 ? Ss 20:41 0:00 /usr/sbin/atd
dbus 3655 0.0 0.5 13840 1084 ? Ssl 20:41 0:00 dbus-daemon-1 --system


Head标头:

USER 用户名
UID 用户ID(User ID)
PID 进程ID(Process ID)
PPID 父进程的进程ID(Parent Process id)
SID 会话ID(Session id)
%CPU 进程的cpu占用率
%MEM 进程的内存占用率
VSZ 进程所使用的虚存的大小(Virtual Size)
RSS 进程使用的驻留集大小或者是实际内存的大小,Kbytes字节。
TTY 与进程关联的终端(tty)
STAT 进程的状态:进程状态使用字符表示的(STAT的状态码)
R 运行 Runnable (on run queue) 正在运行或在运行队列中等待。
S 睡眠 Sleeping 休眠中, 受阻, 在等待某个条件的形成或接受到信号。
I 空闲 Idle
Z 僵死 Zombie(a defunct process) 进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放。
D 不可中断 Uninterruptible sleep (ususally IO) 收到信号不唤醒和不可运行, 进程必须等待直到有中断发生。
T 终止 Terminate 进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行。
P 等待交换页
W 无驻留页 has no resident pages 没有足够的记忆体分页可分配。
X 死掉的进程
< 高优先级进程 高优先序的进程
N 低优先 级进程 低优先序的进程
L 内存锁页 Lock 有记忆体分页分配并缩在记忆体内
s 进程的领导者(在它之下有子进程);
l 多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads)
+ 位于后台的进程组
START 进程启动时间和日期
TIME 进程使用的总cpu时间
COMMAND 正在执行的命令行命令
NI 优先级(Nice)
PRI 进程优先级编号(Priority)
WCHAN 进程正在睡眠的内核函数名称;该函数的名称是从/root/system.map文件中获得的。
FLAGS 与进程相关的数字标识

############################################################

例子:
查看当前系统进程的uid,pid,stat,pri, 以uid号排序.
ps -eo pid,stat,pri,uid –sort uid

查看当前系统进程的user,pid,stat,rss,args, 以rss排序.
ps -eo user,pid,stat,rss,args –sort rss

############################################################

ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。


1、ps 的参数说明:

ps 提供了很多的选项参数,常用的有以下几个:

l 长格式输出;
u 按用户名和启动时间的顺序来显示进程;
j 用任务格式来显示进程;
f 用树形格式来显示进程;

a 显示所有用户的所有进程(包括其它用户);
x 显示无控制终端的进程;
r 显示运行中的进程;
ww 避免详细参数被截断;

我们常用的选项是组合是 aux 或 lax,还有参数 f 的应用。


2、ps aux 或 lax 输出的解释:

USER 进程的属主;
PID 进程的ID;
PPID 父进程;
%CPU 进程占用的CPU百分比;
%MEM 占用内存的百分比;
NI 进程的NICE值,数值大,表示较少占用CPU时间;
VSZ 进程虚拟大小;
RSS 驻留中页的数量;
TTY 终端ID
STAT 进程状态(有以下几种)
D 无法中断的休眠状态(通常 IO 的进程);
R 正在运行可中在队列中可过行的;
S 处于休眠状态;
T 停止或被追踪;
W 进入内存交换(从内核2.6开始无效);
X 死掉的进程(从来没见过);
Z 僵尸进程;

< 优先级高的进程
N 优先级较低的进程
L 有些页被锁进内存;
s 进程的领导者(在它之下有子进程);
l 多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads);
+ 位于后台的进程组;
WCHAN 正在等待的进程资源;
START 启动进程的时间;
TIME 进程消耗CPU的时间;
COMMAND 命令的名称和参数;


3、应用举例:

[root@localhost ~]# ps -aux |more
可以用 | 管道和 more 连接起来分页查看。
[root@localhost ~]# ps -aux > ps001.txt
把结果输出到ps001.txt文本中并保存。
[root@localhost ~]# more ps001.txt
这里是把所有进程显示出来,并输出到ps001.txt文件,然后再通过more 来分页查看。


4、kill 终止(杀死)进程,有十几种控制进程的方法,下面是一些常用的方法:
[root@localhost ~]#kill -STOP [pid]
发送SIGSTOP (17,19,23)停止一个进程,而并不消灭这个进程。
[root@localhost ~]#kill -CONT [pid]
发送SIGCONT (19,18,25)重新开始一个停止的进程。
[root@localhost ~]#kill -KILL [pid]
发送SIGKILL (9)强迫进程立即停止,并且不实施清理操作。
[root@localhost ~]#kill -9 -1
终止你拥有的全部进程。
SIGKILL 和 SIGSTOP 信号不能被捕捉、封锁或者忽略,但是,其它的信号可以。所以这是你的终极武器。

使用PS命令
通常我自己使用的时候会带上-ef参数,然后通过grep "***"查找自己关心的进程。
如ps -ef |grep 'nova'查找和Nova相关的进程

介绍下PS的用法:
1. ps 简介
ps 命令就是最根本相应情况下也是相当强大地进程查看命令.运用该命令可以确定有哪些进程正在运行和运行地状态、 进程 是否结束、进程有没有僵死、哪些进程占用了过多地资源等等.总之大部分信息均为可以通过执行该命令得到地.
2. ps 命令及其参数
ps 命令最经常使用地还是用于监控后台进程地工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设
备进行通信地,所以如果需要检测其情况,便可以运用 ps 命令了.
该命令语法格式如下:
ps [选项]
-e 显示所有进程,环境变量
-f 全格式
-h 不显示标题
-l 长格式
-w 宽输出
a
显示终端上地所有进程,包括其他用户地进程
r
只显示正在运行地进程
x
显示没有控制终端地进程
O[+|-] k1 [,[+|-] k2 [,…]] 根据 SHORT KEYS、k1、k2 中快捷键指定地多级排序顺序显示进程列表.
对于 ps 地不同格式都存在着默认地顺序指定.这些默认顺序可以被用户地指定所覆盖.在这里面“+”字符是可选地,“-” 字符是倒转指定键地方向.
pids 只列出进程标识符,之间运用逗号分隔.该进程列表必须在命令行参数地最后一个选项后面紧接着给出,中间不能插入 空格.比如:ps -f1,4,5.
以下介绍长命令行选项,这些选项都运用“--”开头:
--sort X[+|-] key [,[+|-] key [,…]] 从 SORT KEYS 段中选一个多字母键.“+”字符是可选地,因为默认地方向就是按 数字升序或者词典顺序.比如: ps -jax -sort=uid,-ppid,+pid.
--help 显示帮助信息.
--version 显示该命令地版本信息.

有三个命令可以查看正在运行的进程: ps: 是比较常用的,可以配合grep命令来查找正在运行的进程 top: 能够动态刷新,显示即时进程CPU和内存的占用率,用于动态监视高资源占用, pstree: 用来查看进程的父子关系

ps命令
输入下面的ps命令,显示所有运行中的进程:
# ps aux | less

其中,
-A:显示所有进程
a:显示终端中包括其它用户的所有进程
x:显示无控制终端的进程
任务:查看系统中的每个进程。
# ps -A
# ps -e

任务:查看非root运行的进程
# ps -U root -u root -N

任务:查看用户vivek运行的进程
# ps -u vivek

任务:top命令
top命令提供了运行中系统的动态实时视图。在命令提示行中输入top:


Linux里面tail -f命令作用是什么?
tail命令是一个在Linux和Unix系统中使用的命令行工具,用于显示文件的末尾内容。它可以从文件的最后一行开始显示,默认情况下显示文件的最后10行。tail命令的基本语法如下:tail [选项] [文件]常用的选项包括:-n<行数>:指定要显示的行数。例如,tail -n 20file.txt将显示文件file.txt的最后20行。-...

linux意义何在linux意义
-type查找某一类型的文件 b-块设备文件 d-目录 c-字符设备文件 p-管道文件 l-符号链接文件 f-普通文件 -sizen查找符合指定的文件大小的文件 -exec对匹配的文件执行该参数所给出的其他linux命令,相应命令的形式为命令{};,注意{}和;之间的空格,{}代表查到的内容 linux中下载安装jdk的意义?安装...

linux配置dns命令教程linux配置dns命令
Linux可以实现域名解析,一般需要配置这几个文件 \/etc\/hosts\/\/配置本机主机名,可以省略 \/etc\/host.conf\/\/必须的,本地dns客户端的配置文件 \/etc\/resolv.conf\/\/必须的,配置dns服务器地址 在linux系统下,如何配置DNS服务器,用域名发布网站的整个过程?力尽不知热,但惜夏日长。芳菲歇去何须恨,...

Linux下 su命令与su - 命令有什么区别?
Linux下 su命令与su - 命令的区别:一、切换root身份不同 1、su命令:su只是切换了root身份,但Shell环境仍然是普通用户的Shell;而su -连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误,报command not found的错误。2、su - 命令:su切换成root用户以后,pwd...

linux中pwd和!pwd有何区别?
pwd就是一条命令,表示查看当前工作路径。而前面加!叹号是一种快捷指令,如!pwd表示执行最后一条以pwd开头的命令。比如说你之前输入过一条service network restart的命令,后面你又要重启网络服务,就不用费力打出这条命令,你输入!ser就可以了(当然前提是你这中间没输入过其他以ser开头的命令)。

Linux简答题
末行模式(Line mode):命令模式下 “:”键进入末行模式,此时vi会在显示窗口的最后一行显示一个“:”作为末行模式的提示符,等待用户输入命令。多数对文件操的作命令都是在此模式下执行的(如查找、替换文本中的某个字符串)。末行命令执行完后,vi自动回到命令模式。4.Linux下的用户可以分为三类...

体验优势Linux系统体验优势究竟何在linux系统有那些
另外,Linux系统的资源消耗十分有效,因此可以有效减少系统运行时的负载,也更能有效降低系统耗电量,从而拥有更低的维护成本。总而言之,Linux系统拥有许多优势,无论是个人用户还是企业级用户都可以从中受益。Linux系统的安全性、可靠性、资源消耗等优势使得它成为当前最受推荐和使用的系统。

在LINUX中怎么设置上网这一项
一个最简单的方法是在Windows下用鼠标右击“我的电脑”,选中“属性”,在出现的对话框中点击“设备管理”。其中包含了用户需要知道的所有信息,用户尤其应当注意显示器、显卡和声卡的配置情况。二、开始安装 注意,在启动Linux的安装过程之后,没有类似Windows系统安装中“退出安装”的功能选项。如果用户在...

何处下载CentOS的Linux内核的源代码?
一、准备工作 1. 如何查询你的CentOS的版本 参见:http:\/\/blog.csdn.net\/yunying_si\/article\/details\/23679769 2. 如何查询Linux 内核版本 [root@syy ~]# uname -r 2.6.32-431.3.1.el6.i686 二、何处下载 经过上面的准备工作,我知道我的 CentOS的发布版本是 6.5,内核版本是2.6.32-...

linux中用户权限 -rw-rw-r-x是表示什么意思
3、x代表execute(执行);执行(execute): 具有将文件作为程序或脚本执行的权限,表示该文件具有被系统执行的权限。Window系统中查看一个文件是否为可执行文件,是通过扩展名(.exe、.bat 等),但在 Linux 系统中,文件是否能被执行,是通过看此文件是否具有 x 权限来决定的。也就是说,只要文件拥有 ...

罗山县19530586853: 如何在Linux中查看所有正在运行的进程 -
年雨托马: 你可以使用ps命令.它能显示当前运行中进程的相关信息,包括进程的PID.Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息.ps命令能提供一份当前进程的快照.如果你想状态可以自动刷新,可以使用top命令.ps命令 输入下面的...

罗山县19530586853: 怎么查看linux正在运行的服务 -
年雨托马: 1. 首先查看系统运行的进程2. 若需要查看系统当前运行的就需要用如下命令:3. # ps auxw4. 其中参数a表示显示系统中所有用户的的进程;u表示输出进程用户所属信息; x表示也5. 显示没有控制台的进程;若显示行太长而被截断则可以使用f参...

罗山县19530586853: 怎么看linux下正在运行的所有的程序 -
年雨托马: 用ps -ef命令可查看所有当前正在运行的进程

罗山县19530586853: 如何在Linux中查看所有正在运行的进程 -
年雨托马: ps -ef查看当前执行进程;ps -ef | grep XXX 用来查看你指定的XXX参数的进程

罗山县19530586853: 如何在Linux中查看所有正在运行的进程 -
年雨托马: 你好.可以使用ps命令.它能显示当前运行中进程的相关信息,包括进程的PID.Linux和UNIX都支持ps命令,显示所有运行中进程的相关信息.

罗山县19530586853: linux系统怎么查看在运行的进程 -
年雨托马: 用top命令,可以查看所有进程的运行情况 top命令可以动态的查看所有运行的进程情况(一次显示不全,可以翻页查看). 也可以用下面命令,静态的只显示一次所有的进程: $top -b -n 1

罗山县19530586853: 如何查看linux程序运行状态
年雨托马: linux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生) 4. 僵死(进程已终止, 但进程描述...

罗山县19530586853: 如何查看linux上运行的程序 -
年雨托马: vi 只是编辑器,保存退出后,可以命令行看到当前保存的文件.比如ls hello.c 接下来要用编译器来编译程序, 比如gcc hello.c -o hello 执行程序只要在命令行执行就可以了, 比如./hello 建议楼主先去了解一下基本的shell命令.

罗山县19530586853: 如何在Linux中查看所有正在运行的进程 -
年雨托马: ps aux 或者 top -bn1

罗山县19530586853: Linux怎样查询出当前系统的所有进程 -
年雨托马: 在控制台,使用命令“ps -A”查看当前系统所有的进程.在控制台使用ps命令“ps -aux|less”,查看当前系统正在运行的所有进程.在控制台使用ps命令“ps -U root -u root -N”,查看当前系统中非root运行的所有进程.在控制台使用ps命令“ps -u test”,查看当前系统中test用户运行的所有进程.

你可能想看的相关专题

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网