如何查看Linux系统中运行的进程信息?

Linux系统中,进程是程序执行的基本单位,查看进程信息是系统管理和故障排查的核心操作,Linux提供了多种命令工具,帮助用户从不同维度获取进程详情,以下将详细介绍常用查看进程的方法及其实际应用。

如何查看linux的进程

基础进程查看命令:ps

ps(Process Status)是最常用的静态进程查看命令,用于快速获取当前进程的快照信息,其核心优势在于灵活的参数组合,可按需筛选进程。

常用参数及功能

参数 说明 示例
a 显示所有终端下的进程(包括其他用户) ps a
u 以用户为中心显示,包含CPU、内存占用率 ps u
x 显示无终端控制的进程(如后台服务) ps x
-e 显示所有进程(等同于ax ps -e
-f 以完整格式显示,包含进程树层级关系 ps -f
-l 以长格式显示,详细列出进程状态 ps -l

实际应用

  • 查看当前用户的所有进程ps u,输出包含PID(进程ID)、%CPU(CPU占用率)、%MEM(内存占用率)、COMMAND(启动命令)等关键字段。
  • 查看系统所有进程的层级关系ps -ef,其中PPID(父进程ID)可帮助追溯进程启动链,例如systemd(PID=1)是所有用户进程的祖先。

动态实时监控:top与htop

tophtop是动态查看进程的工具,可实时刷新进程状态,适合监控系统资源占用情况。

top命令

top默认按CPU占用率降序排列,每3秒更新一次(可通过-d调整间隔,如top -d 5设置为5秒),其交互式操作支持:

  • M:按内存占用率排序;
  • P:按CPU占用率排序(默认);
  • k:输入PID终止进程;
  • q:退出。

输出字段解析:PID(进程ID)、USER(进程所有者)、%CPU(CPU占用百分比)、%MEM(内存占用百分比)、TIME+(CPU累计时间)、COMMAND(启动命令)。

htop命令(增强版)

htoptop的升级版,支持颜色区分、鼠标操作、进程树展开等功能,使用更直观,安装后直接运行htop,可通过快捷键:

  • F5:展开/折叠进程树;
  • F6:选择排序字段(CPU、内存、IO等);
  • F9:强制终止进程。

按条件筛选进程:pgrep与pidof

当需要根据进程名、用户等信息快速定位PID时,pgreppidof更高效。

如何查看linux的进程

pgrep

通过进程属性匹配PID,常用参数:

  • -l:输出进程名而非常规PID;
  • -u:指定用户(如pgrep -u nginx);
  • -f:匹配完整命令行(如pgrep -f "nginx -c /etc/nginx/nginx.conf")。

示例:查找nginx用户的nginx进程PID:pgrep -u nginx -l

pidof

仅通过进程名查找PID,适合简单场景,如pidof nginx返回所有nginx进程的PID(多个PID以空格分隔)。

进程树查看:pstree

pstree以树形结构展示进程间的父子关系,适合分析服务依赖链,常用参数:

  • -p:显示进程PID;
  • -u:显示进程所有者;
  • -a:显示完整启动命令。

示例:pstree -p以树形结构展示所有进程及其PID,可清晰看到systemdnginxnginx worker的启动层级。

文件与进程关联:lsof

lsof(List Open Files)可查看进程打开的文件(包括网络端口),适合排查端口占用或文件锁定问题,常用参数:

如何查看linux的进程

  • -i:指定协议或端口(如lsof -i :80查看80端口占用进程);
  • -p:指定PID(如lsof -p 1234查看PID=1234的进程打开文件);
  • -u:指定用户(如lsof -u nginx查看nginx用户打开的文件)。

示例:lsof -i :8080若返回nginx 1234 root 6u IPv4 12345 0t0 TCP *:8080 (LISTEN),则表示nginx(PID=1234)以root用户占用8080端口。

查看Linux进程需根据场景选择工具:静态快照用ps,实时监控用top/htop,快速筛选用pgrep/pidof,分析进程关系用pstree,排查文件/端口问题用lsof,掌握这些命令,可高效完成系统管理与故障排查。

FAQs

Q1:如何查看某个端口的占用进程?
A:使用lsof命令结合端口参数,例如查看8080端口占用情况:lsof -i :8080,输出结果会显示占用该端口的进程名、PID、用户及协议信息。

Q2:如何实时监控特定CPU核心的进程使用情况?
A:通过top-c参数绑定CPU核心,例如监控1号核心(CPU编号从0开始)的进程:top -c -p 1,或使用htop后按F6选择CPU核心列进行排序筛选。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/29863.html

(0)
酷番叔酷番叔
上一篇 2025年9月24日 23:35
下一篇 2025年9月24日 23:53

相关推荐

  • Linux环境下如何彻底卸载R软件并清理残留文件?

    在Linux系统中卸载R软件需要根据其安装方式选择不同的方法,常见的安装方式包括通过系统包管理器(如apt、yum/dnf)安装或从源码编译安装,不同安装方式对应的卸载步骤差异较大,需分别处理,以下是详细的卸载流程及注意事项,卸载前准备工作在开始卸载前,建议完成以下准备工作,避免误操作导致数据丢失或系统异常:确……

    2025年9月18日
    4900
  • Linux如何创建用户组?操作步骤有哪些?

    在Linux系统中,用户组是管理用户权限和资源分配的重要机制,通过将用户划分到不同的组,可以简化权限控制(如文件目录的组权限设置)和批量用户管理,创建用户组是系统管理员的基础操作之一,主要通过命令行工具实现,本文将详细介绍Linux中创建用户组的方法及相关操作,用户组的基本概念用户组是一组用户的集合,每个用户至……

    2025年9月25日
    3900
  • Linux如何添加自定义路由表?操作步骤与方法详解

    在Linux系统中,路由表是内核转发数据包的核心依据,它记录了目标网络与下一跳网关、出接口等信息的映射关系,正确配置路由表能实现跨网段通信、负载均衡、多出口策略等功能,本文将详细介绍Linux系统中添加路由表的方法,包括临时配置、永久配置及高级策略路由,理解Linux路由表基础Linux系统默认维护多个路由表……

    2025年9月23日
    3400
  • 如何查看SD卡设备标识?

    准备工作硬件需求SD卡(建议Class 10以上,容量≥16GB)SD卡读卡器目标设备(如树莓派、笔记本电脑)软件与资源Linux镜像:从官方渠道下载(如Ubuntu、Raspberry Pi OS)烧录工具(任选其一):Windows/macOS:BalenaEtcher(图形化,推荐新手)Windows:R……

    2025年7月5日
    7700
  • Linux如何安装配置SFTP服务器?

    在Linux系统中,SFTP(SSH File Transfer Protocol)是一种基于SSH的安全文件传输协议,通过加密传输数据保障文件传输的安全性,广泛应用于服务器文件管理、数据备份等场景,本文将以主流Linux发行版(Ubuntu/Debian、CentOS/RHEL)为例,详细讲解SFTP服务器的……

    2025年10月6日
    3300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信