当前位置:首页>Linux>Linux 运维 40+必备命令速查手册

Linux 运维 40+必备命令速查手册

  • 2026-10-11 05:42:11
Linux 运维 40+必备命令速查手册

SYSADMIN · 命令速查

运维命令靠百度?

Linux 运维40+

必备命令速查手册

文件操作 · 进程管理 · 系统监控 · 网络排查 · 日志分析 · 正则速查

DevNotes 运维笔记

LinuxOps

📦 4 PARTS + CONCLUSION

👉 滑动

PART 01

文件与进程

10 条核心命令

PART 02

系统资源监控

CPU·内存·磁盘·网络

PART 03

日志与安全

排查·防护·抓包

PART 04

正则速查

15 条常用表达式

PART ///

写在最后

总结与收藏建议

运维老司机的一句话

记不住命令不可怕,可怕的是需要时找不到参考

这篇文章整理了 Linux 运维工作中最常用的 40+ 条命令,覆盖文件操作、进程管理、系统资源监控、网络排查、日志分析、安全防护等核心场景,末尾还附带了15 条常用正则表达式速查。无论是日常巡检还是紧急排障,收藏这一篇就够用了。

01

PART

文件与进程操作

FILE & PROCESS · 10 条核心命令

CMD 01

删除 0 字节文件

清理系统中的空文件(0 字节),释放目录 clutter。常用于日志清理后的收尾。

...bash

find -type f -size 0 -exec rm -rf {} \;

CMD 02

查看进程(按内存从大到小排序)

按内存占用降序排列当前所有进程,快速定位吃内存的“大户”。

...bash

ps -e -o "%C : %p : %z : %a" | sort -k5 -nr

CMD 03

按 CPU 利用率从大到小排列

与上一条类似,改为按CPU 利用率降序排列,找出消耗 CPU 最多的进程。

...bash

ps -e -o "%C : %p : %z : %a" | sort -nr

CMD 04

打印 cache 里的 URL

从缓存目录中提取所有 jpg 关联的 URL,用 grep、strings 和 awk 组合实现。

...bash

grep -r -a jpg /data/cache/* | strings | \

 grep "http:" | awk -F'http:' '{print "http:"$2;}'

CMD 05

查看 http 并发请求数及 TCP 连接状态

统计各TCP 连接状态的数量分布(ESTABLISHED、TIME_WAIT 等),是排查并发问题的第一步。

...bash

netstat -n | awk '/^tcp/ {++S[$NF]} \

 END {for(a in S) print a, S[a]}'

CMD 06

sed 匹配 Root 行并将 no 替换成 yes

在 sshd_config 中匹配包含 Root 的行,将该行的no 替换为 yes,常用于修改 SSH 配置。

...bash

sed -i '/Root/s/no/yes/' /etc/ssh/sshd_config

CMD 07

杀掉 MySQL 进程

三种方式查杀 MySQL 进程:用 ps + grep + awk + xargs 组合,或直接用 killall,或通过pid 文件定向杀进程。

...bash

ps aux | grep mysql | grep -v grep \

 | awk '{print $2}' | xargs kill -9

killall -TERM mysqld

kill -9 `cat /usr/local/apache2/logs/httpd.pid`

CMD 08

显示运行级别 3 开启的服务

列出 init 运行级别 3 下自动启动的服务,用 cut 截取第 15 个字符之后的服务名。

...bash

ls /etc/rc3.d/S* | cut -c 15-

CMD 09

SHELL 中用 EOF 显示多行信息

在 Shell 脚本中输出多行文本,用cat << EOF语法实现 heredoc。

...bash

cat << EOF

+------------------------------------------------+

| === Welcome to Tunoff services === |

+------------------------------------------------+

EOF

CMD 10

for 巧用:给 MySQL 建软链接

遍历 MySQL bin 目录下所有文件,批量创建到 /usr/bin 的软链接,省去逐个手动 ln。

...bash

cd /usr/local/mysql/bin

for i in *; do ln /usr/local/mysql/bin/$i /usr/bin/$i; done

02

PART

系统资源监控

SYSTEM RESOURCE · CPU·内存·磁盘·网络

这一部分覆盖运维巡检中最高频的资源检查项。每条命令附带了判断标准,按需取用即可。

取 IP 地址

...bash

ifconfig eth0 | grep "inet addr:" | awk '{print $2}' | cut -c 6-

# 或者

ifconfig | grep 'inet addr:' | grep -v '127.0.0.1' \

 | cut -d: -f2 | awk '{print $1}'

内存大小

...bash

free -m | grep "Mem" | awk '{print $2}'

资源巡检速查表

以下命令覆盖CPU、内存、SWAP、磁盘、I/O、网络六大核心维度,每条附判断标准。

检查项命令判断标准
CPU 负载cat /proc/loadavg前三个值不超过逻辑 CPU 的 4 倍
CPU 负载(详细)mpstat 1 1%idle 是否过低(<5%)
内存空间freefree 值是否过低
SWAP 空间free + vmstat 1 5swap used 是否过高,si/so 是否频繁
磁盘空间df -hUse% 是否超过 90%
磁盘 I/O 负载iostat -x 1 2%util 是否超过 100%
网络负载sar -n DEVrxbyt/s、txbyt/s 是否过高
网络错误netstat -idrop/fifo/colls/carrier 是否有值
网络连接数netstat -an | grep ...连接数是否异常增多
进程总数ps aux | wc -l是否超过 250
可运行进程vmstat 1 5是否超过逻辑 CPU 的 4 倍
进程详情top -id 1是否有异常进程
磁盘大文件du -cks * | sort -rn | head -n 10找出占用最多的 Top 10
jpg 文件总大小find / -name *.jpg -exec wc -c {} \;统计全盘 jpg 总大小

✦ 关键提示:CPU 数量越多(多核算多个 CPU,可用cat /proc/cpuinfo | grep -c processor查看),系统负载越低,每秒能处理的请求数也越多。

03

PART

日志排查与安全防护

LOG & SECURITY · 排查·防护·抓包

网络状态检查、用户管理、日志巡检、进程清理和安全防护命令集中在本节,是排障和应急响应的核心工具箱。

网络状态与用户检查

网络连通性检查

用ping、traceroute、nslookup、dig检查DNS、网关等是否可以正常连通。

用户检查

用who | wc -l检查登录用户是否过多(比如超过 50 个),也可以用uptime。

系统时间检查

用date检查系统时间是否正确,时间偏差会影响定时任务和日志分析。

打开文件数目

用lsof | wc -l检查打开文件总数是否过多。

日志巡检

...bash

系统日志

cat /var/log/rflogview/*errors

grep -i error /var/log/messages

grep -i fail /var/log/messages

# 核心日志

dmesg

用logwatch --print可以生成每日日志报告。配置/etc/log.d/logwatch.conf设置 Mailto 为自己的邮箱,启动 mail 服务即可每天自动收到日志报告。

安全防护与进程清理

CMD 35

杀掉 80 端口相关进程

...bash

lsof -i :80 | grep -v "ID" | awk '{print "kill -9",$2}' | sh

CMD 36

清除僵死进程

找出状态为Z的僵死进程(Zombie)并杀掉。

...bash

ps -eal | awk '{ if ($2 == "Z") {print $4}}' | kill -9

CMD 37

tcpdump 抓包分析

抓取 80 端口的 10000 个包存入文件,用于防止 80 端口被攻击时分析数据。

...bash

tcpdump -c 10000 -i eth0 -n dst port 80 > /root/pkts

CMD 38

IP 重复数检查并排序

从抓包文件中提取 IP,统计重复访问次数并从小到大排序(注意“-t\ +0”中间是两个空格)。

...bash

less pkts | awk '{printf $3"\n"}' \

 | cut -d. -f 1-4 | sort | uniq -c \

 | awk '{printf $1" "$2"\n"}' | sort -n -t\ +0

其他实用命令

php-cgi 活动进程数

netstat -anp | grep php-cgi | grep ^tcp | wc -l

系统自启动服务

chkconfig --list | awk '{if ($5=="3:on") print $1}'

查看网卡型号

kudzu --probe --class=network

安全排查核心思路

先查日志找线索,再抓包定位源头,最后清进程修配置

04

PART

常用正则表达式速查

REGEX · 15 条实用表达式

正则表达式是运维和开发的通用利器,下面 15 条覆盖了中文字符、邮箱、URL、电话号码、IP 地址等最常见的匹配场景。

用途正则表达式
匹配中文字符[\u4e00-\u9fa5]
匹配双字节字符[^\x00-\xff]
匹配空白行\n\s*\r
匹配 HTML 标记<(\S*?)[^>]*>.*?</\1>|<.*? />
首尾空白字符^\s*|\s*$
Email 地址\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
网址 URL[a-zA-z]+://[^\s]*
帐号合法性^[a-zA-Z][a-zA-Z0-9_]{4,15}$
国内电话号码\d{3}-\d{8}|\d{4}-\d{7}
腾讯 QQ 号[1-9][0-9]{4,}
中国邮政编码[1-9]\d{5}(?!\d)
身份证号\d{15}|\d{18}
IP 地址\d+\.\d+\.\d+\.\d+

特定数字与字符串匹配

...regex

// 特定数字匹配

^[1-9]\d*$    // 匹配正整数

^-[1-9]\d*$   // 匹配负整数

^-?[1-9]\d*$  // 匹配整数

^[1-9]\d*|0$  // 匹配非负整数

^-[1-9]\d*|0$  // 匹配非正整数

// 特定字符串匹配

^[A-Za-z]+$   // 仅26个英文字母

^[A-Z]+$     // 仅大写字母

^[a-z]+$     // 仅小写字母

^[A-Za-z0-9]+$  // 数字+英文字母

^\w+$      // 数字+字母+下划线

双字节字符正则[^\x00-\xff]可用来计算字符串长度(一个双字节字符长度计 2,ASCII 字符计 1);空白行正则\n\s*\r可用来删除空白行。

///

LAST

写在最后

CONCLUSION · 总结与收藏建议

这篇速查手册整理了 Linux 运维中最高频的 40+ 条命令和 15 条常用正则表达式,覆盖了文件操作、进程管理、资源监控、网络排查、日志分析和安全防护六大场景。

命令不在多,在于遇到问题时能快速找到对的工具。建议收藏本文,日常巡检时按 PART 02 的速查表走一遍,排障时从 PART 03 的日志和抓包入手。

我是大乐学IT,每天分享IT知识。如果你觉得今天这篇有收获,欢迎点赞、在看、转发三连,我们下篇见。

既然看到这里了,如果觉得有用,随手点个赞、在看、转发三连吧。

点赞
在看
转发

THANKS FOR READING

最新文章

随机文章