linux基本命令之ps

简介:

1.命令基本介绍

1
2
man  ps
ps  - report a snapshot of the current processes.

    ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等。



2.常用选项

1
2
3
4
5
6
-A:显示所有程序。与 -e 具有同样的效用。
-e:此选项的效果和指定 "A" 选项相同。
-f:显示UID,PPIP,C与STIME栏位。
a:显示现行终端机下的所有程序,包括其他用户的程序。
u:以用户为主的格式来显示程序状况。
x:显示所有程序,不以终端机来区分。



3.常用命令

3.1 ps aux

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ps  aux详解:是用BSD的格式来显示
USER  PID %CPU %MEM  VSZ  RSS  TTY   STAT START   TIME COMMAND
 
 
  USER:该进程的属组。
  PID :该进程的进程ID号。
  %CPU:该进程占用的CPU 资源百分比。
  %MEM:该进程所占用的物理内存百分比。
  VSZ :该进程使用掉的虚拟内存量 (Kbytes)
  RSS :该进程占用的固定的内存量 (Kbytes)
  TTY :该进程是在那个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts /0  等等的,则表示为由网络连接进主机的程序。
  STAT:该程序目前的状态,主要的状态有:
    D :不可中断 uninterruptible  sleep  (usually IO)
    R :运行 runnable。该程序目前正在运作,或者是可被运作;
    S :中断 sleeping。该程序目前正在睡眠当中 ,但可被某些讯号(signal) 唤醒。
    T :停止 traced or stopped。该程序目前正在侦测或者是停止了;
    Z :僵死 a defunct (”zombie”) process。该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
  START:该进程被触发启动的时间;
  TIME :该进程实际使用 CPU 运作的时间。
  COMMAND:该程序的实际命令。


3.2 ps -ef

1
2
3
4
5
6
7
8
9
10
ps  -ef 详解:标准的格式显示进程的
UID        PID  PPID  C STIME TTY          TIME CMD
 
UID     用户ID、但输出的是用户名 
PID     进程的ID 
PPID    父进程ID 
C       进程占用CPU的百分比 
STIME   进程启动到现在的时间 
TTY     该进程在那个终端上运行,若与终端无关,则显示? 若为pts /0 等,则表示由网络连接主机进程。 
CMD     命令的名称和参数


3.3 查看占用CPU最高的进程

1
ps  aux| head  -1; ps  aux| grep  - v  PID| sort  -rn -k 3| head


3.4 查看占用内存最高的进程

1
2
3
4
5
6
7
ps  aux| head  -1; ps  aux| grep  - v  PID| sort  -rn -k 4| head
 
 
解释:
ps  aux| head  -1:得到头
ps  aux| grep  - v  PID :查看进程
sort  -rn -k 4| head :以第四列的数值大小进行逆序排列(默认从小到大)


3.5 查看某个用户起的进程

1
ps  -fu root          #root表示用户


3.6 查看僵尸进程

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
linux系统上:
ps  -ef |  grep  defunct      #查看命令
 
另外可以使用 top 命令查看
top
Tasks:  95 total,   1 running,  94 sleeping,   0 stopped,   0 zombie
 
ps  -ef |  grep  defunct |  grep  - v  grep  wc  -l    #统计所有的僵尸进程
 
 
 
solaris系统上:
a)确定僵尸进程
ps  -efo uid,pid,ppid,pcpu,pmem,vsz,rss,osz,etime,stime,s, comm  grep  Z
或者  ps  -ef |  grep  defunct |  more
b)确定僵尸进程启动时间
ps  -efo uid,pid,ppid,pcpu,pmem,vsz,rss,osz,etime,stime,s, comm  grep  20396  (进程号)


3.7 查看进程启动时间与运行时间

1
2
3
4
5
6
7
8
ps  -eo pid,user,lstart,etime, comm ,args
 
pid:进程ID
user:用户
lstart:启动时间
etime:运行时间
comm :命令
args:命令详细参数


3.8 通过ansible管理查看远程主机上某用户运行的程序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
cat  checkproc.yml
  
---
- name: check remote  proc
   hosts: linux
   remote_user: root
   gather_facts:  false
      
   tasks:
     - name: check proc
       shell:  ps  -ef |  grep  - v  grep  grep  apache |  wc  -l
       register: proccount
     - name: see the pro
       fail:
         msg:  "apache user exist process!"
       when: pscount.stdout !=  "0"
  
  
ansible-playbook -i hosts checkproc.yml


3.9 通过ansible管理删除远程主机上某用户运行的程序

1
2
3
4
5
6
7
8
9
10
11
12
[root@localhost ansible]# cat kill.sh 
#!/bin/bash
 
ps -ef | grep -v grep grep nxy | awk '{print $2}' xargs kill 
 
 
 
[root@localhost ansible]# ls
ansible.cfg  hosts  hosts.20170605bak  kill.sh  roles
 
 
[root@localhost ansible]# ansible  -i hosts node2 -m script -a "/etc/ansible/kill.sh"
本文转自   a8757906   51CTO博客,原文链接:http://blog.51cto.com/nxyboy/1932504
相关文章
|
10月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
1017 1
二、Linux文本处理与文件操作核心命令
|
10月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
640 137
|
10月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1593 58
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
1153 143
linux命令—tree
|
9月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
1490 2
|
10月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
802 16
|
10月前
|
缓存 监控 Linux
Linux内存问题排查命令详解
Linux服务器卡顿?可能是内存问题。掌握free、vmstat、sar三大命令,快速排查内存使用情况。free查看实时内存,vmstat诊断系统整体性能瓶颈,sar实现长期监控,三者结合,高效定位并解决内存问题。
905 0
Linux内存问题排查命令详解
|
12月前
|
监控 Linux 网络安全
Linux命令大全:从入门到精通
日常使用的linux命令整理
1763 13
|
Linux 网络安全 数据安全/隐私保护
使用Linux系统的mount命令挂载远程服务器的文件夹。
如此一来,你就完成了一次从你的Linux发车站到远程服务器文件夹的有趣旅行。在这个技术之旅中,你既探索了新地方,也学到了如何桥接不同系统之间的距离。
2064 21
|
Unix Linux
linux命令—cd
`cd` 命令是 Linux/Unix 系统中用于切换工作目录的基础命令。支持相对路径与绝对路径,常用选项如 `-L` 和 `-P` 分别处理符号链接的逻辑与物理路径。实际操作中,可通过 `cd ..` 返回上级目录、`cd ~` 回到家目录,或利用 `cd -` 在最近两个目录间快速切换。结合 Tab 补全和 `pwd` 查看当前路径,能显著提升效率。此外,需注意特殊字符路径的正确引用及脚本中绝对路径的优先使用。