linux常见命令ps的应用
ps(Process Status)命令是linux中最常见的命令之一,它用来列出当前系统运行中的进程的状态信息。当然了,它只显示命令执行时的进程状态,如果想要动态列出状态信息,可以选择使用top命令。那么通过ps命令我们能够知道进程的哪些信息呢?下面进行介绍。
命令基本介绍
命令格式
ps命令基本格式为:
ps [options]
常用参数
-A 显示所有进程(同-e)
-a 显示当前终端的所有进程
-u 显示进程的用户信息
-o 以用户自定义形式显示进程信息
-f 显示程序间的关系
对于更多参数的介绍,可使用命令man ps查看,这里不再赘述。
字段含义
在介绍实例之前,需要先了解一下ps命令输出各字段的含义,这样我们才能更好地理解所展示的信息。常见字段的基本含义如下:
USER 进程所有者的用户名
PID 进程号
START 进程激活时间
%CPU 进程自最近一次刷新以来所占用的CPU时间和总时间的百分比
%MEM 进程使用内存的百分比
VSZ 进程使用的虚拟内存大小,以K为单位
RSS 驻留空间的大小。显示当前常驻内存的程序的K字节数。
TTY 进程相关的终端
STAT 进程状态,包括下面的状态:
D 不可中断 Uninterruptible sleep (usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核2.6开始无效)
X 死掉的进程
< 高优先级
N 低优先级
L 有些页被锁进内存
s 包含子进程
\+ 位于后台的进程组;
l 多线程,克隆线程
TIME 进程使用的总CPU时间
COMMAND 被执行的命令行
NI 进程的优先级值,较小的数字意味着占用较少的CPU时间
PRI 进程优先级。
PPID 父进程ID
WCHAN 进程等待的内核事件名 常见用法
下面来看看一些常见用法。
显示所有进程信息
ps -A
PID TTY TIME CMD
1 ? 00:00:03 systemd
2 ? 00:00:00 kthreadd
4 ? 00:00:00 kworker/0:0H
6 ? 00:00:00 mm_percpu_wq
7 ? 00:00:00 ksoftirqd/0
8 ? 00:00:02 rcu_sched
9 ? 00:00:00 rcu_bh
10 ? 00:00:00 migration/0
11 ? 00:00:00 watchdog/0
(内容较多,其他部分略过。)
虽然能显示所有进程,但是显示的信息却不多,基本只显示了进程id和进程名,有时候并不实用。
显示所有进程基本信息
相关参数 -e
ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 10:52 ? 00:00:03 /sbin/init splash
root 2 0 0 10:52 ? 00:00:00 [kthreadd]
root 4 2 0 10:52 ? 00:00:00 [kworker/0:0H]
root 6 2 0 10:52 ? 00:00:00 [mm_percpu_wq]
root 7 2 0 10:52 ? 00:00:00 [ksoftirqd/0]
root 8 2 0 10:52 ? 00:00:02 [rcu_sched]
root 9 2 0 10:52 ? 00:00:00 [rcu_bh]
root 10 2 0 10:52 ? 00:00:00 [migration/0]
(内容较多,其他部分略过。)
这个时候已经显示较多信息了。
显示指定用户的进程
相关参数-u
ps -u root
PID TTY TIME CMD
1 ? 00:00:03 systemd
2 ? 00:00:00 kthreadd
4 ? 00:00:00 kworker/0:0H
6 ? 00:00:00 mm_percpu_wq
7 ? 00:00:00 ksoftirqd/0
8 ? 00:00:03 rcu_sched
9 ? 00:00:00 rcu_bh
查看指定进程名相关信息
这个时候就需要配合grep使用了。
例如,查看”java“相关进程:
ps -ef|grep java
root 2685 2684 2 10:55 pts/0 00:01:19 java -jar ./software/finalspeed/finalspeed_client.jar
root 5423 4487 0 11:55 pts/20 00:00:00 grep --color=auto java
查看进程占用内存,cpu利用率等信息
ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 185488 6188 ? Ss 10:52 0:03 /sbin/init splash
root 2 0.0 0.0 0 0 ? S 10:52 0:00 [kthreadd]
root 4 0.0 0.0 0 0 ? S< 10:52 0:00 [kworker/0:0H]
root 6 0.0 0.0 0 0 ? S< 10:52 0:00 [mm_percpu_wq]
从上面的信息,可以看到进程的所有者、cpu占用率、内存占用率等较为详细的信息。
显示线程相关信息
相关参数-l
ps -elf
查看进程间的关系
相关参数-H,进程间关系以树形图的方式展示:
ps -ejH
查看进程的指定字段信息
有时候可能比较关注某些进程信息,ps -o可以指定要显示的列
例如:
ps -eo %cpu,%mem,vsz,rsz,start,stat,pid,sid,ni,uid,user,rss,time,command
.0 0.0 0 0 10:52:51 S 365 0 - 0 root 0 00:00:00 [irq/47-mei_me]
0.0 0.0 0 0 10:52:51 S< 373 0 -20 0 root 0 00:00:00 [cfg80211]
0.0 0.0 0 0 10:52:52 S< 402 0 -20 0 root 0 00:00:00 [ktpacpid]
0.0 0.0 0 0 10:52:56 S 669 0 0 0 root 0 00:00:00 [jbd2/sda15-8]
0.0 0.0 0 0 10:52:56 S< 670 0 -20 0 root 0 00:00:00 [ext4-rsv-conver]
0.0 0.0 0 0 10:52:57 S 676 0 0 0 root 0 00:00:00 [jbd2/sda11-8]
0.0 0.0 0 0 10:52:57 S< 677 0 -20 0 root 0 00:00:00 [ext4-rsv-conver]
0.0 0.0 0 0 10:52:58 S 683 0 0 0 root 0 00:00:00 [jbd2/sda14-8]
0.0 0.0 0 0 10:52:58 S< 684 0 -20 0 root 0 00:00:00 [ext4-rsv-conver]
查看指定进程指定信息
只需要在最后指定–pid参数即可。
例如:
ps -o %cpu,%mem,vsz,rsz,start,stat,pid,sid,ni,uid,user,rss,time,command --pid 2685
%CPU %MEM VSZ RSZ STARTED STAT PID SID NI UID USER RSS TIME COMMAND
2.0 1.9 5740448 159796 10:55:24 Sl+ 2685 2583 0 1000 hyb 159796 00:01:46 java -jar ./software/finalspeed/finalspeed_client.jar
进程太多时分页显示
如果进程信息较多,可能一页无法完成显示,这时可以配合使用more命令
例如:
ps -aux|more 总结
ps命令也是在linux下常用命令之一,通过它我们可以了解更多进程的相关信息。
linux常见命令ps的应用的更多相关文章
- 一个linux常见命令的列表
这是一个linux常见命令的列表. 那些有• 标记的条目,你可以直接拷贝到终端上而不需要任何修改,因此你最好开一个终端边读边剪切&拷贝. 所有的命令已在Fedora和Ubuntu下做了测试 命 ...
- 2 . Linux常见命令
Linux常见命令格式: 命令名称 选项 参数 ls -alh 文件/目录 --all #ls 显示当前目录内容 #ls -l 显示文件详细信息 #ls -hl h已常见单位显示文件大小 k M G# ...
- 嵌入式Linux开发教程:Linux常见命令(上篇)
摘要:这是对周立功编著的<嵌入式Linux开发教程>的第7期连载.本期刊载内容有关LinuxLinux常见命令中的导航命令.目录命令和文件命令.下一期将连载网络操作命令.安装卸载文件系统等 ...
- linux常用命令 ps
linux常用命令 ps Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些线程的快照,就是执行ps命令的那个时刻的那些进程 ...
- 第二天 Linux常见命令
复习: 判断题 1.fedora.redhat.Centos.suse.ubuntu.都是常见的linux 2./分区.swap分区./boot分区都是linux的必须分区 3./dev/sda5在l ...
- linux常用命令--ps、netstat、find
一.ps 1.1ps命令简介 Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那 ...
- Linux常见命令(二)
随着Linux应用的扩展许多同学开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.虽然Linux桌面应用发展很快,但是命令在Linux中依然有很强的生命力.Li ...
- Linux常见命令(三)
今天我们来介绍第三个命令:pwd. Linux中用 pwd 命令来查看”当前工作目录“的完整路径. 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录. 在不太确定当前位置时,就会使用pwd来 ...
- Linux常见命令(四)——mkdir
今天我们来介绍第四个命令:mkdir.mkdir (Make Directory 创建目录): 若指定目录不存在则创建目录.在创建目录时,要求创建目录的用户具有写权限,并应保证新建的目录没有重名. 用 ...
随机推荐
- zoj 2676 Network Wars 0-1分数规划+最小割
题目详解出自 论文 Amber-最小割模型在信息学竞赛中的应用 题目大意: 给出一个带权无向图 G = (V,E), 每条边 e属于E都有一个权值We,求一个割边集C,使得该割边集的平均边权最小,即最 ...
- hdu 1525 Euclid's Game【 博弈论】
Two players, Stan and Ollie, play, starting with two natural numbers. Stan, the first player, subtra ...
- hdu4027Can you answer these queries?【线段树】
A lot of battleships of evil are arranged in a line before the battle. Our commander decides to use ...
- Ubuntu 16.04 ORB_SLAM2+ROS+usb_cam+AR
Ubuntu 16.04 ORB_SLAM2+ROS+usb_cam+AR 参考博文:http://blog.csdn.net/u79501/article/details/68942174 http ...
- NBUTOJ 1643 - 阶乘除法 - [数学题]
题目链接:https://ac.2333.moe/Problem/view.xhtml?id=1643 问题描述 输入两个正整数 n, m,输出 n!/m!,其中阶乘定义为 n!= 1*2*3*... ...
- Oracle安装部署之一键安装oracle数据库及其脚本
准备工作:通过ftp工具上传oracle安装软件到linux系统/mnt目录下,并通过unzip命令解压软件.--------------------------------------------- ...
- 《前端JavaScript面试技巧》笔记一
思考: 拿到一个面试题,你第一时间看到的是什么 -> 考点 又如何看待网上搜出来的永远也看不完的题海 -> 不变应万变 如何对待接下来遇到的面试题 -> 题目到知识再到题目 知识体系 ...
- ubuntu/debian ia-libs
ubuntu 14.04强制安装ia32-libs 1.切换到root权限sudo -i 或 sudo su2.进入apt源列表cd /etc/apt/sources.list.d3.添加ubuntu ...
- php Only variables can be passed by reference
最近做项目,发现了一个报错 Only variables can be passed by reference, 意思是"只有变量能通过'引用'" 就是在代码中 使用了一个方法 ...
- scp sparkuser@spark02:/home/sparkuser/.ssh
文件计算机传送 命令格式:{scp} {计算机用户}@{计算机网络名称}:{目标计算机路径} scp sparkuser@spark02:/home/sparkuser/.ssh