每天一个Linux命令(36)ps命令
Linux中的ps命令是Process Status的缩写。
ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。
(1)用法:
用法: ps [选项参数] [用户名](可选)
(2)功能:
功能: 用来显示当前进程的状态。
ps命令可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。
(3)选项参数:
1) -A 显示所有的进程
2) -e 显示所有的进程,与-A参数一样
3) -u 显示指定用户的信息
4) -a 显示所有终端机下执行的进程,除了阶段作业领导者之外。
5) a 显示现行终端机下的所有进程,包括其他用户的进程。
6) -H 显示树状结构,表示程序间的相互关系。 -j或j:采用工作控制的格式显示程序状况。
(4)实例:
1)[root@localhost sunjimeng]# ps -e|more -20 显示所有的进程
[root@localhost sunjimeng]# ps -e|more -
PID TTY TIME CMD
? :: systemd
? :: kthreadd
? :: ksoftirqd/
? :: kworker/:0H
? :: migration/
? :: rcu_bh
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
? :: rcuob/
-A命令与-e命令相同,都可以显示所有进程
[root@localhost sunjimeng]# ps -A|more -
PID TTY TIME CMD
? :: systemd
? :: kthreadd
? :: ksoftirqd/
? :: kworker/:0H
? :: migration/
? :: rcu_bh
? :: rcuob/
? :: rcuob/
? :: rcuob/
--More--
2)[root@localhost sunjimeng]# ps -u root|more -10 显示指定用户的进程信息
[root@localhost sunjimeng]# ps -u root|more -
PID TTY TIME CMD
? :: systemd
? :: kthreadd
? :: ksoftirqd/
? :: kworker/:0H
? :: migration/
? :: rcu_bh
? :: rcuob/
? :: rcuob/
? :: rcuob/
3)[root@localhost sunjimeng]# ps a ps a命令与ps -a命令
[root@localhost sunjimeng]# ps a
PID TTY STAT TIME COMMAND
tty1 Ssl+ : /usr/bin/Xorg : -background none -verbose -auth /run/gdm/auth-for-gdm-8E54kT/database -seat seat0 -nolisten tcp
pts/ Ss : bash
pts/ S : su root
pts/ S : bash
pts/ R+ : ps a
[root@localhost sunjimeng]# ps -a
PID TTY TIME CMD
pts/ :: su
pts/ :: bash
pts/ :: ps
4)[root@localhost sunjimeng]# ps -ef|more -10 显示所有进程信息,连同命令行
[root@localhost sunjimeng]# ps -ef|more -
UID PID PPID C STIME TTY TIME CMD
root : ? :: /usr/lib/systemd/systemd --switched-root --system --deserialize
root : ? :: [kthreadd]
root : ? :: [ksoftirqd/]
root : ? :: [kworker/:0H]
root : ? :: [migration/]
root : ? :: [rcu_bh]
root : ? :: [rcuob/]
root : ? :: [rcuob/]
root : ? :: [rcuob/]
--More--
5)[root@localhost sunjimeng]# ps -ef|more -5 ps命令与grep命令结合起来查找指定的进程
[root@localhost sunjimeng]# ps -ef|more -
UID PID PPID C STIME TTY TIME CMD
root : ? :: /usr/lib/systemd/systemd --switched-root --system --deserialize
root : ? :: [kthreadd]
root : ? :: [ksoftirqd/]
root : ? :: [kworker/:0H]
[root@localhost sunjimeng]# ps -ef|grep kworker/:0H
root : ? :: [kworker/:0H]
root : pts/ :: grep --color=auto kworker/:0H
6)[root@localhost sunjimeng]# ps -l 将目前属于您自己这次登入的 PID 与相关信息列示出来
[root@localhost sunjimeng]# ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
S - wait pts/ :: su
S - wait pts/ :: bash
R - - pts/ :: ps
说明:
各相关信息的意义:
F 代表这个程序的旗标 (flag), 4 代表使用者为 super user
S 代表这个程序的状态 (STAT),关于各 STAT 的意义将在内文介绍
UID 程序被该 UID 所拥有
PID 就是这个程序的 ID !
PPID 则是其上级父程序的ID
C CPU 使用的资源百分比
PRI 这个是 Priority (优先执行序) 的缩写
NI 这个是 Nice 值
ADDR 这个是 kernel function,指出该程序在内存的那个部分。如果是个 running的程序,一般就是 "-"
SZ 使用掉的内存大小
WCHAN 目前这个程序是否正在运作当中,若为 - 表示正在运作
TTY 登入者的终端机位置
TIME 使用掉的 CPU 时间。
CMD 所下达的指令为何
在预设的情况下, ps 仅会列出与目前所在的 bash shell 有关的 PID 而已,所以, 当我使用 ps -l 的时候,只有三个 PID。
7)[root@localhost sunjimeng]# ps f 显示进程间的关系
UID PID PPID C STIME TTY TIME CMD
root : pts/ :: su root
root : pts/ :: bash
root : pts/ :: ps -f
[root@localhost sunjimeng]# ps f
PID TTY STAT TIME COMMAND
pts/ S : su root
pts/ S : \_ bash
pts/ R+ : \_ ps f
tty1 Ssl+ : /usr/bin/Xorg : -background none -verbose -auth /run/gdm/auth-for-gdm-8E54kT/database -seat seat0 -nolisten tcp
[root@localhost sunjimeng]#
8)root@localhost sunjimeng]# ps aux |more -10 列出目前所有的正在内存当中的程序
root@localhost sunjimeng]# ps aux |more -
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 0.0 0.3 ? Ss : : /usr/lib/systemd/systemd --switched-root --system --deserialize
root 0.0 0.0 ? S : : [kthreadd]
root 0.0 0.0 ? S : : [ksoftirqd/]
root 0.0 0.0 ? S< : : [kworker/:0H]
root 0.0 0.0 ? S : : [migration/]
root 0.0 0.0 ? S : : [rcu_bh]
root 0.0 0.0 ? S : : [rcuob/]
root 0.0 0.0 ? S : : [rcuob/]
root 0.0 0.0 ? S : : [rcuob/]
说明:
USER:该 process 属于哪一个个使用者账号的
PID :该 process 的号码
%CPU:该 process 使用掉的 CPU 资源百分比
%MEM:该 process 所占用的物理内存百分比
VSZ :该 process 使用掉的虚拟内存量 (Kbytes)
RSS :该 process 占用的固定的内存量 (Kbytes)
TTY :该 process 是在那个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
STAT:该程序目前的状态,主要的状态有
R :该程序目前正在运作,或者是可被运作
S :该程序目前正在睡眠当中 (可说是 idle 状态),但可被某些讯号 (signal) 唤醒。
T :该程序目前正在侦测或者是停止了
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
START:该 process 被触发启动的时间
TIME :该 process 实际使用 CPU 运作的时间
COMMAND:该程序的实际指令
9)[root@localhost sunjimeng]# ps -axjf|more -10 列出类似程序树的程序显示
[root@localhost sunjimeng]# ps -axjf|more -
PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND
? - S : [kthreadd]
? - S : \_ [ksoftirqd/]
? - S< : \_ [kworker/:0H]
? - S : \_ [migration/]
? - S : \_ [rcu_bh]
? - S : \_ [rcuob/]
? - S : \_ [rcuob/]
? - S : \_ [rcuob/]
? - S : \_ [rcuob/]
每天一个Linux命令(36)ps命令的更多相关文章
- 每天一个linux命令(53)--ps命令
要毁掉一天,从早上开始. Linux中的ps命令是 process status 的缩写.ps 命令用来列出系统中当前运行的那些进程.ps 命令列出的是当前那些进程的快照,就是执行ps 命令的那个时刻 ...
- 每天一个linux命令:ps命令
Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进 ...
- linux中的ps命令用法。
在linux中使用ps命令可以查看有哪些进程在运行和运行的状态.进程是否结束.进程有没有僵尸.哪些进程占用了过多的资源等等. ps命令最常用的是用于监控后台进程的工作情况. 名称:ps 使用权限:所有 ...
- Linux下使用ps命令来查看Oracle相关的进程
Linux下可以使用ps命令来查看Oracle相关的进程 Oracle Listener 这个命令会列出Oracle Net Listener的进程 [oracle@ www.linuxidc.com ...
- Linux下可以使用ps命令来查看Oracle相关的进程
Linux下可以使用ps命令来查看Oracle相关的进程 Oracle Listener 这个命令会列出Oracle Net Listener的进程 [oracle@ www.linuxidc.com ...
- linux常用命令:ps 命令
Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信 ...
- 详解linux中的ps命令
Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信 ...
- Linux命令学习-ps命令
Linux中,ps命令的全称是process status,即进程状态的意思,主要作用是列出系统中当前正在运行的进程信息. ps命令的功能很强大,参数也非常多,下面只举几个简单的实例. 显示所有进程信 ...
- 【Linux基础】ps命令详解
PS命令介绍 Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动 ...
- Linux中的ps命令
Linux中ps命令用来列出系统中当前运行的那些进程. 使用格式:ps 参数 如:ps -A 通过man ps可以获得ps的详细参数用法 -A 显示所有进程信息 c 列出程序时,显示每个程序真正的 ...
随机推荐
- LoadRunner调用md5方法
LoadRunner调用md5方法 上一篇 / 下一篇 2011-04-29 11:25:12 / 个人分类:Loadrunner 查看( 958 ) / 评论( 0 ) / 评分( 0 / 0 ) ...
- fabric自动发布tomcat线上项目
现在公司的每个tomcat项目都有测试和生产两个环境,对于经常需要上线的tomcat项目,如用手工更新就非常耗费时间和人力.现用fabric开发了一个自动发布tomcat项目的脚本,该脚本已经在公司使 ...
- python 读写数据
开源标准数据集 —— mnist(手写字符识别) 下载地址:mnist.pkl.gz 1. 使用 python 读取和解析 mnist.pkl.gz import pickle import gzip ...
- php rsa加密解密实例 及签名验证-自己实践
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/4/1 * Time: 1:50 */ //注意格式一 ...
- 分享牛人就是的volatilekeyword
volatile作用 一个定义为volatile的变量是说这变量可能会被意想不到地改变.这样,编译器就不会去如果这个变量的值了. 精确地说就是.优化器在用到这个变量时必须每次都小心地又一次读取这个变量 ...
- stage3D基础二-----顶点和片段着色器(转)
来源:http://www.adobe.com/cn/devnet/flashplayer/articles/vertex-fragment-shaders.html 本教程将介绍着色器.着色器是 S ...
- Linux下性能分析工具汇总
来自:http://os.51cto.com/art/201104/253114.htm 本文讲述的是:CPU性能分析工具.Memory性能分析工具.I/O性能分析工具.Network性能分析工具. ...
- Quartz.Net - Lesson 1: 使用Quartz
Lesson 1: 使用Quartz 本系列文章是官方3.x文档的翻译,原文地址:https://www.quartz-scheduler.net/documentation/quartz-3.x/t ...
- SQL之经典语句
一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...
- mac上搭建docker镜像私服
1.创建私服容器 docker run -d -e SETTINGS_FLAVOR=dev -e STORAGE_PATH=/tmp/registry -v /opt/data/registry:/t ...