linux ps 源代码,【linux】ps(示例代码)
Linux下PS命令详解
要对系统中进程进行监测控制,查看状态,内存,CPU的使用情况,使用命令:/bin/ps
(1)ps :是显示瞬间进程的状态,并不动态连续;
(2)top:如果想对进程运行时间监控,应该用 top 命令;
(3)kill 用于杀死进程或者给进程发送信号;
(4)查看文章最后的man手册,可以查看ps的每项输出的含义,to find: STANDARD FORMAT SPECIFIERS
===================================ps 的参数说明=============================
l 长格式输出;
u 按用户名和启动时间的顺序来显示进程;
j 用任务格式来显示进程;
f 用树形格式来显示进程;
a 显示所有用户的所有进程(包括其它用户);
x 显示无控制终端的进程;
r 显示运行中的进程;
ww 避免详细参数被截断;
-A 列出所有的进程-w 显示加宽可以显示较多的资讯-au 显示较详细的资讯-aux 显示所有包含其他使用者的进程
-e 显示所有进程,环境变量-f 全格式-h 不显示标题-l 长格式-w 宽输出a 显示终端上地所有进程,包括其他用户地进程r 只显示正在运行地进程x 显示没有控制终端地进程
我们常用的选项是组合是aux 或lax,还有参数f 的应用。pids 只列出进程标识符,之间运用逗号分隔.该进程列表必须在命令行参数地最后一个选项后面紧接着给出,中间不能插入空格.比如:ps -f1,4,5 显示的是进程ID为1,4,5的进程
下介绍长命令行选项,这些选项都运用“--”开头:--sort X[+|-] key [,[+|-] key [,…]] 从SORT KEYS段中选一个多字母键.“+”字符是可选地,因为默认地方向就是按数字升序或者词典顺序,“-”字符是逆序排序(即降序).
比如:ps -jax -sort=uid,-ppid,+pid.--help 显示帮助信息.
--version 显示该命令地版本信息.
在前面地选项说明中提到了排序键,接下来对排序键作进一步说明.需要注意地是排序中运用地值是ps运用地内部值,并非仅用于某些输出格式地伪值.排序键列表见下表.
============排序键列表==========================
c cmd 可执行地简单名称C cmdline 完整命令行f flags 长模式标志g pgrp 进程地组IDG tpgid 控制tty进程组IDj cutime 累计用户时间J cstime 累计系统时间k utime 用户时间K stime 系统时间m min_flt 次要页错误地数量M maj_flt 重点页错误地数量n cmin_flt 累计次要页错误N cmaj_flt 累计重点页错误o session 对话IDp pid 进程IDP ppid 父进程IDr rss 驻留大小R resident 驻留页s size 内存大小(千字节)S share 共享页地数量t tty tty次要设备号T start_time 进程启动地时间U uid UID
u user 用户名v vsize 总地虚拟内存数量(字节)y priority 内核调度优先级========================================ps aux 或lax 输出的解释=========================
2、ps aux 或lax 输出的解释
au(x) 输出格式:USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER: 进程所有者PID: 进程ID
%CPU: 占用的CPU 使用率%MEM: 占用的内存使用率VSZ: 占用的虚拟内存大小RSS: 占用的内存大小
TTY: 终端的次要装置号码(minor device number of tty)
STAT: 进程状态:
START: 启动进程的时间;TIME: 进程消耗CPU的时间;COMMAND:命令的名称和参数;
=========================================进程STAT状态==================================
D 无法中断的休眠状态(通常IO 的进程);R 正在运行,在可中断队列中;S 处于休眠状态,静止状态;T 停止或被追踪,暂停执行;W 进入内存交换(从内核2.6开始无效);X 死掉的进程;Z 僵尸进程不存在但暂时无法消除;
W: 没有足够的记忆体分页可分配WCHAN 正在等待的进程资源;
<: i pthreads>
========================================kill 终止进程================================
kill 终止进程
有十几种控制进程的方法,下面是一些常用的方法:
kill -STOP [pid]发送SIGSTOP (17,19,23)停止一个进程,而并不消灭这个进程。
kill -CONT [pid]发送SIGCONT (19,18,25)重新开始一个停止的进程。
kill -KILL [pid]发送SIGKILL (9)强迫进程立即停止,并且不实施清理操作。
kill -9 -1终止你拥有的全部进程。
SIGKILL 和SIGSTOP 信号不能被捕捉、封锁或者忽略,但是,其它的信号可以。所以这是你的终极武器。
==================================================范例==============================
$ ps
PID TTY TIME COMMAND
5800 ttyp0 00:00:00 bash
5835 ttyp0 00:00:00 ps
可以看到,显示地项目共分为四项,依次为PID(进程ID)、TTY(终端名称)、TIME(进程执行时 间)、COMMAND(该进程地命令行输入).
可以运用u选项来查看进程所有者及其他少许详细信息,如下所示:$ ps u
USER PID %CPU %MEM USZ RSS TTY STAT START TIME COMMAND
test 5800 0.0 0.4 1892 1040 ttyp0 S Nov27 0:00 -bash
test 5836 0.0 0.3 2528 856 ttyp0 R Nov27 0:00 ps u
在bash进程前面有条横线,意味着该进程便是用户地登录shell,所以对于一个登录用户来说带短横线地进程只有一个.还可以看 到%CPU、%MEM两个选项,前者指该进程占用地CPU时间
和总时间地百分比;后者指该进程占用地内存和总内存地百分比.
在这种情况下看到了所有控制终端地进程;当然对于其他那些没有控制终端地进程 还是没有观察到,所以这时就需要运用x选项.运用x选项可以观察到所有地进程情况.
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去查找特定的进程,然后再对特定的进程进行操作。
linux ps 源代码,【linux】ps(示例代码)相关推荐
- linux ps 代码,Linux ps命令详解(示例代码)
ps命令是Process Status的缩写, 用来列出系统中当前运行的那些进程. ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用to ...
- ps -ef grep java解释,ps -ef | grep java(示例代码)
ps命令将某个进程显示出来 grep命令是查找 中间的|是管道命令 是指ps命令与grep同时执行 PS是LINUX下最常用的也是非常强大的进程查看命令 grep命令是查找,是一种强大的文本搜索工具, ...
- linux代码签名,浅谈Linux容器和镜像签名(示例代码)
导读 从根本上说,几乎所有的主要软件,即使是开源软件,都是在基于镜像的容器技术出现之前设计的.这意味着把软件放到容器中相当于是一次平台移植.这也意味着一些程序可以很容易就迁移,而另一些就更困难. 我大 ...
- linux下的ppp软件,linux下ppp拨号无线上网(示例代码)
linux下用ppp上网需要两个程序:pppd和chat.ubuntu自带pppd和chat,可以使用man查看具体使用方法. 典型的ppp拨号需要准备几个文件: 1. pppd脚本. 2. chat ...
- linux性能分析top iostat vmstat free,linux 性能篇 -- top用法(示例代码)
#top 输出: c: 切换显示命令名称和完整命令行. 显示完整的命令. 这个功能很有用. M : 根据驻留内存大小进行排序. P:根据CPU使用百分比大小进行排序.[[email protecte ...
- linux设备文件生成,Linux设备文件自动生成(示例代码)
第一种是使用mknod手工创建:# mknod 第二种是自动创建设备节点:利用udev(mdev)来实现设备文件的自动创建,首先应保证支持udev(mdev),由busybox配置. 具体udev相关 ...
- linux查看设备内存代码,Linux下内存查看命令(示例代码)
在Linux下面,我们常用top命令来查看系统进程,top也能显示系统内存.我们常用的Linux下查看内容的专用工具是free命令. Linux下内存查看命令free详解: 在Linux下查看内存我们 ...
- linux如何添加route,Linux主机添加路由 route(示例代码)
近期小乱我使用ansible批量部署设备接入到日志审计系统时,发现执行脚本后,日志服务器端仍未收到Linux主机上传的syslog:排查后发现故障原因是主机的路由未放通. 在主机上添加路由,指令比较简 ...
- mysql linux 安装部署,linux之MySQL安装部署(示例代码)
MySQL安装配置步骤: 1. 进入/home/oldboy/tools 执行上传mysql数据库指令并创建一个mysql用户 #rz -y上传压缩包 [[email protected] to ...
- linux echo写php编码,linux使用和基础操作(示例代码)
1.linux系统初使用 linux有图形终端和字符终端,关于linux学习以字符终端为主,即命令行操作: [root@centos7 ~]#runlevel 查看当前工作模式 N 3 //3为字符终 ...
最新文章
- ChineseCalendar类[转]
- 三周第五次课(4月10日)
- C# 转换人民币大小金额(WinForm、Asp.Net)
- 做了个小界面,mark一下
- linux shell 按行 逐行 读取文件
- JS:两个json数组合并、去重,以及删除某一项元素
- ppt2010基础操作笔记
- 信息学奥赛一本通C++语言——1109:开关灯
- c语言编程软件开机自动启动,C语言实现程序开机自启动
- 人工智能领域有哪些曾被拒稿的优秀工作?
- 维护IBM DB2数据库所应了解的根蒂基本常识-9
- sql选择性插入_SQL插入选择
- 计算机课做名片怎么做,第7课制作个人小名片(教学设计)
- GB 50007-2011《建筑地基基础设计规范》高清电子版
- 华为计算机黑屏怎么办,华为笔记本升级后黑屏怎么回事
- BJTU1931 铁憨憨骑士团的中央空调
- MacOS 使用SwitchHosts修改 hosts 不生效的原因及解决方法
- 美团综合业务推荐系统的质量模型与实践
- MySQL 创建数据库/表/字段
- Redis【2022最新面试题】