热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux学习笔记:psef、psaux、kill9

一、查看进程命令1.ps命令Linux中的ps命令是ProcessStatus的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就

一、查看进程命令

1.ps命令

  Linux中的ps命令是Process Status的缩写。

  ps命令用来列出系统中当前运行的那些进程。

  ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。

  要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。

Linux上进程有5种状态:

  1. 运行(正在运行或在运行队列中等待) 
  2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 
  3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生) 
  4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放) 
  5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行) 

 ps工具标识进程的5种状态码:

  • D 不可中断 uninterruptible sleep (usually IO) 
  • R 运行 runnable (on run queue) 
  • S 中断 sleeping 
  • T 停止 traced or stopped 
  • Z 僵死 a defunct (”zombie”) process 

参数:

  • -e:显示所有进程 等同于-A
  • f:显示程序间的关系 ps -ef
  • -u:指定用户 ps -u root

实例:

  ps常与grep组合使用,查找特定进程 ps -ef | grep ssh

  找出与cron与syslog有关的PID号码 ps aux | grep '(cron|syslog)'

  查找指定进程个数 ps -ef | grep xxx -c 或者 ps -ef | grep -c xxx

2.top命令

  top命令提供了运行中系统的动态实时视图。在命令提示行中输入top:

  按q退出,按h进入帮助。

3.pstree命令

  pstree以树状显示正在运行的进程。树的根节点为pid或init。如果指定了用户名,进程树将以用户所拥有的进程作为根节点。

二、ps -ef与ps aux的区别

  • ps -ef 是System V展示风格
  • ps aux是BSD风格

字段含义:

1.UID:用户ID

2.PID:进程ID

3.PPID:父进程ID

4.C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高 

5.STIME:进程启动的时间

6.TTY:完整的终端名称

7.TIME:CPU时间

8.CMD:完整的启动进程所用的命令和参数 

 字段含义:

1.USER:用户名称

2.PID:进程号

3.%CPU:进程占用CPU的百分比

4.%MEM:进程占用物理内存的百分比

5.VSZ:进程占用的虚拟内存大小(单位:KB)

6.RSS:进程占用的物理内存大小(单位:KB)

7.TTY:终端名称(缩写),若为?,则代表此进程与终端无关,由系统启动的 

8.STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等

9.START:进程的启动时间

10.TIME:CPU时间,即进程使用CPU的总时间

11.COMMAND:启动进程所用的命令和参数,如果过长会被截断显示 

 注意:

1.command列如果过长,aux会截断显示,而-ef不会截断;

2.如果想查看进程的CPU占用率和内存占用率,使用aux;

3.如果想查看进程的父进程ID和完整的command,使用-ef;

 三、kill命令

  kill 命令用于杀死进程,终止进程。

  kill -9 pid 等于 kill -s 9 pid 表示强迫进程立即停止


 END 2018-08-16 14:46:18

转:https://www.cnblogs.com/hider/p/9482903.html



推荐阅读
  • 本文详细介绍了Java中实现异步调用的多种方式,包括线程创建、Future接口、CompletableFuture类以及Spring框架的@Async注解。通过代码示例和深入解析,帮助读者理解并掌握这些技术。 ... [详细]
  • 本文详细介绍了Grand Central Dispatch (GCD) 的核心概念和使用方法,探讨了任务队列、同步与异步执行以及常见的死锁问题。通过具体示例和代码片段,帮助开发者更好地理解和应用GCD进行多线程开发。 ... [详细]
  • 本文探讨了如何通过一系列技术手段提升Spring Boot项目的并发处理能力,解决生产环境中因慢请求导致的系统性能下降问题。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 本题要求在一组数中反复取出两个数相加,并将结果放回数组中,最终求出最小的总加法代价。这是一个经典的哈夫曼编码问题,利用贪心算法可以有效地解决。 ... [详细]
  • 深入剖析JVM垃圾回收机制
    本文详细探讨了Java虚拟机(JVM)中的垃圾回收机制,包括其意义、对象判定方法、引用类型、常见垃圾收集算法以及各种垃圾收集器的特点和工作原理。通过理解这些内容,开发人员可以更好地优化内存管理和程序性能。 ... [详细]
  • 本文档汇总了Python编程的基础与高级面试题目,涵盖语言特性、数据结构、算法以及Web开发等多个方面,旨在帮助开发者全面掌握Python核心知识。 ... [详细]
  • 使用WinForms 实现 RabbitMQ RPC 示例
    本文通过两个WinForms应用程序演示了如何使用RabbitMQ实现远程过程调用(RPC)。一个应用作为客户端发送请求,另一个应用作为服务端处理请求并返回响应。 ... [详细]
  • Go语言以其简洁的语法和强大的并发处理能力而闻名,特别是在云计算和分布式计算领域有着广泛的应用。本文将深入探讨Go语言中的Channel机制,包括其不同类型及其在实际编程中的应用。 ... [详细]
  • 本文探讨了如何解决HAOI2007竞赛中的理想正方形问题。通过计算矩阵中每个N×N子矩阵的最大值和最小值,最终求得所有子矩阵中最大值与最小值差的最小值。 ... [详细]
  • 本文将详细探讨 Linux 系统中的 netstat 命令,该命令用于查看网络状态和连接情况。通过了解 IP 地址和端口的基本概念,我们将更好地理解如何利用 netstat 命令来监控和管理网络服务。 ... [详细]
  • MapReduce原理是怎么剖析的
    这期内容当中小编将会给大家带来有关MapReduce原理是怎么剖析的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1 ... [详细]
  • 本章探讨了使用固定数组实现栈和队列的基本方法,以及如何通过这些基本结构来实现更复杂的操作,如获取栈中的最小值。此外,还介绍了如何利用栈来模拟队列的行为,反之亦然。 ... [详细]
author-avatar
lucky2502882647
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有