Linux wget下载文件进阶技巧分享

做Linux开发这几年,wget下载文件是被身边同事问得最多的问题之一。今天把答案整理出来,供大家参考。


emer 发布于  2026-10-13 07:12 

Linux 配置开机自启动实战详解(2026最新整理)

同样是配置开机自启动,不同的实现方式在性能和可维护性上差别很大。本文对比几种常见写法,并给出推荐方案。


emer 发布于  2026-10-12 07:10 

Linux nohup后台运行进阶技巧分享(新手必看)

本文面向Linux初学者,用通俗的语言讲解nohup后台运行,读完即可动手实践。


emer 发布于  2026-10-12 07:10 

Linux 磁盘空间清理最佳实践(2026最新整理)

面试中经常被问到的磁盘空间清理,你真的掌握了吗?本文结合实例,讲解Linux中磁盘空间清理的正确用法。


emer 发布于  2026-10-12 07:08 

Linux scp传输文件实战详解(建议收藏)

很多初学者在学习Linux时,都会遇到scp传输文件相关的问题。网上的资料零散且质量参差不齐,本文尝试用一篇文章把scp传输文件讲清楚。


emer 发布于  2026-10-12 07:04 

Linux 限制进程资源最佳实践(新手必看)

做Linux开发这几年,限制进程资源是被身边同事问得最多的问题之一。今天把答案整理出来,供大家参考。


emer 发布于  2026-10-12 07:04 

Linux awk处理文本案例讲解(新手必看)

如果你正在学习Linux,那么awk处理文本几乎是绕不开的一个环节。本文从原理到实践,带你快速上手。


emer 发布于  2026-10-11 07:09 

Linux 批量结束进程案例讲解(附代码示例)

批量结束进程是Linux开发者必须掌握的基础技能之一。掌握它不仅能提升开发效率,还能避免很多隐蔽的 Bug。


emer 发布于  2026-10-11 07:09 

Linux zip解压中文乱码进阶技巧分享(2026最新整理)

很多初学者在学习Linux时,都会遇到zip解压中文乱码相关的问题。网上的资料零散且质量参差不齐,本文尝试用一篇文章把zip解压中文乱码讲清楚。


emer 发布于  2026-10-11 07:09 

Linux SSH免密登录实战详解(完整版)

很多初学者在学习Linux时,都会遇到SSH免密登录相关的问题。网上的资料零散且质量参差不齐,本文尝试用一篇文章把SSH免密登录讲清楚。


emer 发布于  2026-10-11 07:08 

Linux sudo权限配置案例讲解(完整版)

最近在项目里又遇到了sudo权限配置的典型问题,索性把解决方法整理成这篇文章,希望能帮到遇到同样问题的同学。


emer 发布于  2026-10-11 07:07 

Linux 挂载数据盘最佳实践(附代码示例)

做Linux开发这几年,挂载数据盘是被身边同事问得最多的问题之一。今天把答案整理出来,供大家参考。


emer 发布于  2026-10-11 07:07 

Linux rsync同步目录进阶技巧分享(新手必看)

同样是rsync同步目录,不同的实现方式在性能和可维护性上差别很大。本文对比几种常见写法,并给出推荐方案。


emer 发布于  2026-10-11 07:06 

Linux 实时跟踪日志输出入门教程(完整版)

熟练掌握实时跟踪日志输出,是写好Linux代码的基本功。本文循序渐进,从概念到示例一次讲透。


emer 发布于  2026-10-11 07:04 

Linux awk处理文本常见问题汇总(新手必看)

最近在项目里又遇到了awk处理文本的典型问题,索性把解决方法整理成这篇文章,希望能帮到遇到同样问题的同学。


emer 发布于  2026-10-11 07:02 

Linux sudo权限配置核心用法解析(新手必看)

熟练掌握sudo权限配置,是写好Linux代码的基本功。本文循序渐进,从概念到示例一次讲透。


emer 发布于  2026-10-10 08:24 

Linux 查看磁盘IO避坑指南(建议收藏)

很多线上 Bug 的根源,都在于对查看磁盘IO的理解不够深入。本文从常见错误出发,反推正确的使用姿势。


emer 发布于  2026-10-10 08:20 

Linux systemd管理服务最佳实践(完整版)

很多线上 Bug 的根源,都在于对systemd管理服务的理解不够深入。本文从常见错误出发,反推正确的使用姿势。


emer 发布于  2026-10-10 08:19 

Linux 批量结束进程最佳实践(完整版)

批量结束进程看似简单,实际使用中却有不少细节需要注意。本文把常见场景和坑点都列出来,方便随时查阅。


emer 发布于  2026-10-10 08:17 

Linux查看进程占用CPU,top和ps命令

前言

服务器突然卡了?CPU跑满了?想知道哪个进程占CPU最多?本文讲top和ps命令,帮你快速定位问题进程。

一、top命令 — 实时监控

启动top

top

top界面说明

第一行:

  • 系统时间、运行时间、登录用户数、负载(1/5/15分钟)

第二行:

  • 任务总数、运行中、睡眠中、停止、僵尸进程

第三行(CPU):

  • us:用户态占用
  • sy:内核态占用
  • id:空闲

第四行(内存):

  • total:总内存
  • used:已用
  • free:空闲

进程列表:

  • PID:进程ID
  • USER:运行用户
  • %CPU:CPU占用
  • %MEM:内存占用
  • COMMAND:进程名

top常用快捷键

快捷键 作用
P 按CPU排序
M 按内存排序
k 杀掉进程
q 退出
1 显示每个CPU核心

只看某个进程

top -p 进程ID

二、ps命令 — 查看进程快照

查看所有进程

ps aux

按CPU排序

ps aux --sort=-%cpu | head -10

解释:

  • aux:显示所有进程
  • --sort=-%cpu:按CPU降序
  • head -10:只看前10个

按内存排序

ps aux --sort=-%mem | head -10

查找特定进程

ps aux | grep nginx

三、查找占用CPU最高的进程

方法1:用top

top

按P,按CPU排序,第一个就是占用最高的。

方法2:用ps

ps aux --sort=-%cpu | head -5

输出:

USER  PID  %CPU  %MEM  COMMAND
root  1234  50.0  10.0  php-fpm

四、查找占用内存最高的进程

ps aux --sort=-%mem | head -5

五、杀掉进程

根据PID杀

kill 进程ID

强制杀

kill -9 进程ID

根据进程名杀

pkill nginx

杀掉所有php-fpm

pkill php-fpm

六、常见场景

场景1:CPU跑满了

排查步骤:

  1. 用top看哪个进程CPU高
  2. 如果是php-fpm,看是不是有慢请求
  3. 如果是mysql,看是不是有慢SQL
  4. 杀掉异常进程

场景2:内存占满了

排查步骤:

  1. 用top按M排序
  2. 看哪个进程内存高
  3. 杀掉或重启

场景3:某个进程一直跑

ps aux | grep 进程名

找到PID后杀掉。

七、常见坑

坑1:top和ps看到的CPU不一样

原因: top是实时刷新的,ps是快照。

解决: 用top看实时变化。

坑2:杀了进程又起来

原因: 有守护进程自动拉起。

解决: 找到父进程一起杀,或者停掉服务。

systemctl stop php-fpm

坑3:僵尸进程

现象: 进程状态是Z(Zombie)。

原因: 子进程退出了,父进程没回收。

解决: 重启父进程。

八、常用命令汇总

# 实时监控
top

# 按CPU排序
ps aux --sort=-%cpu | head -10

# 按内存排序
ps aux --sort=-%mem | head -10

# 查找进程
ps aux | grep 进程名

# 杀进程
kill PID
kill -9 PID
pkill 进程名

九、负载怎么看

什么是负载

负载就是正在等待CPU运行的进程数。

怎么判断高不高

  • 负载 < CPU核心数:正常
  • 负载 > CPU核心数:有点忙
  • 负载 > 2倍CPU核心数:很卡

查看CPU核心数

nproc

总结

记住:

  1. 用top实时看CPU和内存
  2. 按P按CPU排序,按M按内存排序
  3. 用ps aux --sort=-%cpu找CPU最高的
  4. 用kill -9 PID杀进程
  5. 负载超过CPU核心数就有问题

最常用:

top
ps aux --sort=-%cpu | head -10
kill -9 进程ID

遇到问题加QQ23979811 协助处理


emer 发布于  2026-10-9 07:58 
'); })();