Linux 进程查找、杀死方案集合

一、查找进程

  • 方式一 ps 命令:显示当前活动进程的快照。

    sh 复制代码
    # 显示所有用户的所有进程
    $ ps aux
    
    # 显示所有进程的完整信息
    $ ps -ef
    sh 复制代码
    # 常用参数
    -a:显示所有进程,包括其他用户的进程。
    -u <用户>:仅显示指定用户的进程信息。
    -x:显示没有控制终端的进程。
    -e:显示所有进程,等同于 `-A` 参数。
    -f:显示进程的详细信息,包括进程的 PID、PPID、CPU 使用率、内存使用量等。
    -l:显示进程的长格式信息,包括进程的 PID、PPID、状态、CPU 时间、命令等。
    -p <PID>:仅显示指定 PID 的进程信息。
    -t <终端>:仅显示指定终端上的进程信息。
    -C <命令名>:仅显示指定命令名的进程信息。
  • 方式二 top 命令:实时显示系统中运行的进程和系统资源使用情况。它按 CPU 使用率排序进程,并更新显示。

    sh 复制代码
    # 命令会使用默认参数
    $ top
    
    # 例如
    # 每 2 秒刷新一次 top 命令
    $ top -d 2
    # 仅显示用户名为 username 的进程信息
    $ top -u username
    # 仅显示进程 ID 为 pid 的进程信息
    $ top -p pid
    sh 复制代码
    # 常用参数
    -d <秒数>:指定 top 命令的刷新间隔时间,单位为秒。
    -u <用户名>:仅显示指定用户名的进程信息。
    -p <进程ID>:仅显示指定进程ID的进程信息。
    -b:以批处理模式运行 top 命令,将结果输出到文件中。
    -n <次数>:指定 top 命令运行的次数,执行完指定次数后自动退出。
    -H:以线程模式运行 top 命令,显示每个进程的线程信息。
    -i:不显示空闲进程。
    -c:显示进程的完整命令行,而不仅仅是进程的名称。
    -o <排序字段>:指定 top 命令的排序字段,例如 `%CPU` 表示按照 CPU 使用率排序,`%MEM` 表示按照内存使用率排序。
  • 方式三 pgrep 命令:根据进程名或其他属性来查找并打印匹配的进程 ID。

    sh 复制代码
    # 将列出所有名为 xxx 的进程ID
    $ pgrep xxx
    
    # 例如:
    $ pgrep mysql
    $ pgrep ssh
    sh 复制代码
    # 常用参数
    -o:仅显示找到的最小(起始)进程号
    -n:仅显示找到的最大(结束)进程号
    -l:显示进程名称
    -P:指定父进程号
    -g:指定进程组
    -t:指定开启进程的终端
    -u:指定进程的有效用户ID
  • 方式四 pidof 命令:查找指定名称的进程的进程 ID。

    sh 复制代码
    # 将列出所有名为 xxx 的进程ID
    $ pidof xxx
    
    # 例如:
    $ pidof mysql
    $ pidof -s ssh
    sh 复制代码
    # 常用参数
    -s:仅返回一个进程号
    -c:仅显示具有相同"root"目录的进程
    -x:显示由脚本开启的进程
    -o:指定不显示的进程ID

二、杀死进程

  • 指令参数需要再仔细查询。

  • 方式一 通过 kill 进程 id 的方式实现。

    sh 复制代码
    # 1、查找到对应进程ID,例如 firefox
    $ ps -ef | grep firefox
    
    # 2、杀死
    $ kill [信号代码] <进程PID>
    $ kill <firefox-pid>
    
    # 补充:
    # 强制杀死
    $ kill -9 <firefox-pid>
    $ sudo kill -9 <firefox-pid>
  • 方式二 killall 通过程序的名字来杀死进程。补充:pkill 和 killall 应用方法差不多,也是直接杀死运行中的程序,如果想杀掉单个进程,请用 kill 来杀掉。

    sh 复制代码
    $ killall <进程名>
    $ killall firefox
    
    # 补充:
    # 强制杀死
    $ killall -9 firefox
    $ sudo killall -9 firefox
    
    # pkill 使用
    $ pkill <进程名>
  • 方式三 xkill 可以杀死图形程序应用, 例如 firefox 崩溃无响应可以使用该命令。

    sh 复制代码
    # 执行命令后,会出现一个白色的 x,然后用鼠标单击想要杀死的应用
    $ xkill
  • 方式四 Terminal 终端输入: gnome-system-monitor ,就可以打开 system monitor,然后找到相应进程,右击选择 kill process 就可以了。

相关推荐
东方佑11 分钟前
去魅:工具调用、Agent 调用、A2A、MCP、Harness 到底都是什么
服务器·网络·数据库
刚入门的大一新生27 分钟前
Linux-线程概念
linux·jvm
H.莓飛36 分钟前
【数据结构】排序总结与规模实测
linux·服务器·开发语言·数据结构·visual studio·1024程序员节
xianyuCcCcCCCcc38 分钟前
Kubernetes :健康检查、认证授权与可视化面板
运维·云原生·kubernetes·dashboard
Zenova EdgeOS1 小时前
Linux 日志实战:用 journalctl 精准检索与治理工业边缘日志
linux·运维·chrome
Dory_Youth1 小时前
电脑的搜索功能不能用,一搜就黑屏闪退
运维·笔记
Dxy12393102161 小时前
Linux 压缩解压相关命令介绍
linux·运维·服务器
eleven_4u1 小时前
QPS如何计算,如何部署架构
java·linux·运维·jvm·中间件
云飞云共享云桌面2 小时前
非标自动化工厂研发部门怎么实现一台服务器带10个SolidWorks设计并发
运维·服务器·人工智能·3d·自动化·电脑·制造
分布式存储与RustFS2 小时前
你的网站备份只存一块盘?把 1Panel 的备份目标换成 RustFS
运维·开源·备份·对象存储·1panel·s3·rustfs