【一天一个shell命令】好管家-进程-ps

简介:

小知识(以ps为例):
 查看命令路径  which ps 
 命令帮助 ps --help
 命令完全手册: man ps

说明

ps全称是:Process Status (进程状态),他就是提供进程信息的。

附知识说明

我们经常见到shell命令有三种类型的参数,最初我还琢磨 单划线和双划线有什么特殊的含义,原来是一个版本演变留下的问题。

linux系统中常见的3种命令行参数(以ps为例)
Unix类型的参数,前面有一短划线 如:ps -e
BSD类型的参数,前面没有短划线  如:ps  a
GNU长参数,前面有双划线 如:ps --deselect

所以,ps –a 和 ps  a查询结果会不同

常见实例


  
  
  1. $ps 

如图:
ps

解释:默认情况,ps命令只显示属于当前用户并正在当前终端中运行的进程。默认ps的话,只运行了bash 和 ps


  
  
  1. $ps –ef 

如图:psef

解释:

UID 拥有进程的用户

PID 进程的ID

PPID 父进程PID

C 进程存续期的处理利用率

STIME 进程启动时的系统时间

TTY 进程所属的终端

TIME  运行进程累计CPU时间

CMD 启动进程的名称

帮助文档

这回我用的是redhat的--help, 得到ps的help被分为五类:

simple selection  简易选项

********* simple selection ********* 
-A all processes    所有线程              
-N negate selection   忽略选择            
-a all w/ tty except session leaders 显示一个终端的所有进程,除了会话引线 
-d all except session leaders     显示所有进程,但省略所有的会话引线(utility)  
-e all processes               
T  all processes on this terminal   
a  all w/ tty, including other users 
g  OBSOLETE -- DO NOT USE          
r  only running processes        
x  processes w/o controlling ttys

selection by list  列表选项

********* selection by list ********* 
-C by command name 
-G by real group ID (supports names) 
-U by real user ID (supports names) 
-g by session OR by effective group name 
-p by process ID 
-s processes in the sessions given 
-t by tty 
-u by effective user ID (supports names) 
U  processes for specified users 
t  by tty

output format  输出格式化

*********** output format **********  
-o,o user-defined   可以输入自己的参数
-f full           
-j,j job control  
s  signal          
-O,O preloaded
-o  v  virtual memory  
-l,l long         
u  user-oriented   
-F   extra full   
X  registers   

long options  长操作类型

*********** long options *********** 
--Group  --User  --pid  --cols  --ppid 
--group  --user  --sid  --rows  --info 
--cumulative  --format  --deselect 
--sort  --tty  --forest  --version 
--heading  --no-heading  --context

misc options 其他选项

********* misc options *********

-V,V  show version      L  list format codes   f  ASCII art forest 
-m,m,-L,-T,H  threads   S  children in sum    -y change -l format 
-M,Z  security data     c  true command name  -c scheduling class 
-w,w  wide output       n  numeric WCHAN,UID  -H process hierarchy


实例(来自man ps)

1. 查看系统每个进程的标准参数(To see every process on the system using standard syntax)


  
  
  1. $ps -e     
  2. $ps -ef   
  3. $ps -eF   
  4. $ps –ely 

2. 查看系统每个进程的BSD(系统名)参数(To see every process on the system using BSD syntax)


  
  
  1. $ps ax   
  2. $ps axu 

3. 打印进程树(To print a process tree)


  
  
  1. $ps -ejH   
  2. $ps axjf 

4. 打印线程的有关信息


  
  
  1. $ps -eLf   
  2. $ps axms 

5. 获取安全信息


  
  
  1. $ps -eo euser,ruser,suser,fuser,f,comm,label   
  2. $ps axZ   
  3. $ps –eM 

6. 要查看每个进程运行在用户根目录(真实的和有效的ID)格式


  
  
  1. $ps -U root -u root u 

7. 查看用户自定义的格式(To see every process with a user-defined format)


  
  
  1. $ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm   
  2. $ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm   
  3. $ps -eopid,tt,user,fname,tmout,f,wchan 

8. 仅仅打印系统日志的进程ID(Print only the process IDs of syslogd)


  
  
  1. $ps -C syslogd -o pid

9. 仅仅打印pid=42的name(Print only the name of PID 42)


  
  
  1. $ps -p 42 -o comm=

10. 实用  以(7)为例,按照自定义格式看cpu信息


  
  
  1. $ps -eo comm,pcpu | head 

image

附: -0的参数目录

参数 描述
pcpu CPU占用率
pid 进程ID
ppid 父进程ID
pmem 内存使用率
comm 可执行文件
cmd 简单命令(simple command)
user 启动进程的用户
nice 优先级(niceness)
time 累计的CPU时间
etime 进程启动后累计时间
tty 当前终端进程
euid 有效用户ID
stat 进程状态









本文转自 wws5201985 51CTO博客,原文链接:http://blog.51cto.com/yjplxq/1034687,如需转载请自行联系原作者
目录
相关文章
|
23天前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
52 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
26天前
|
Shell 知识图谱
Shell printf 命令
10月更文挑战第3天
15 1
|
26天前
|
Shell PHP
Shell echo命令
10月更文挑战第3天
15 0
|
1月前
|
JSON Java Shell
Dockerfile中RUN、CMD、ENTRYPOINT、SHELL命令的区别
理解这些指令的差异和应用场景,有助于构建高效、灵活且易于管理的Docker镜像。在实际应用中,根据需要选择合适的指令,可以有效地控制镜像构建和容器运行的行为。
96 0
|
6月前
|
Linux
百度搜索:蓝易云【Linux系统ps命令:查看正在运行的进程】
通过这些简洁的ps命令用法,你可以方便地查看Linux系统中正在运行的进程信息。
85 1
|
6月前
|
安全 Linux 应用服务中间件
linux(三十一)系统信息命令ps查看系统进程
linux(三十一)系统信息命令ps查看系统进程
213 1
|
6月前
|
存储 监控 Linux
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
111 0
|
5月前
|
监控 Linux 应用服务中间件
探索Linux中的`ps`命令:进程监控与分析的利器
探索Linux中的`ps`命令:进程监控与分析的利器
118 13
|
2月前
|
调度
crash命令 —— ps
crash命令 —— ps
|
3月前
|
存储 Docker 容器
在Docker中,容器退出后,通过docker ps命令查看不到,数据会丢失么?
在Docker中,容器退出后,通过docker ps命令查看不到,数据会丢失么?