Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux高频命令

Linux运维开发必备高频命令大全(工作版)

作者:文优

本文整理了 Linux运维开发中最常用的高频命令,涵盖文件操作、文本处理、权限管理、进程控制、网络排障、压缩解压、定时任务和Docker/K8s实战,每个命令都配有真实示例,可直接复制使用

摘要:整理 Linux 运维开发高频命令,按文件操作、文本处理、权限、进程、网络、压缩、定时任务等场景分类,每个命令附真实示例,可直接复制使用。

1. 文件与目录操作

1.1 查看目录内容

命令说明
pwd显示当前所在目录的绝对路径
ls列出目录内容,常用 ls -l(详细信息)、ls -a(含隐藏文件)、ls -lh(人类可读方式显示)、ls -rtl(按修改时间正序排序)
tree以树状结构显示目录层级(部分系统需自行安装)
# 查看当前目录详细列表
ls -lh

# 长格式显示,按修改时间正序排序(旧的在上,新的在下)
ls -rtl

# 以树状结构查看目录层级
tree /data/project

1.2 切换与定位目录

命令说明
cd切换目录,cd .. 返回上级,cd ~ 回用户主目录,cd - 回到上一次目录,cd / 回到系统根目录
# 进入配置目录
cd /etc/nginx

# 返回上级目录
cd ..

# 回到上一次所在目录(来回切换很好用)
cd -

1.3 创建与删除目录/文件

命令说明
mkdir创建目录,mkdir -p a/b/c 递归创建多级目录
touch创建空文件,或更新文件时间戳
rm删除,rm -r 递归删除目录,rm -f 强制删除(⚠️ 谨慎使用,不可恢复)
# 递归创建多级目录并进入
mkdir -p /data/logs && cd /data/logs

# 创建空文件
touch file.txt

# 删除目录及内部所有内容(高危操作,慎用!)
rm -rf /tmp/test

1.4 复制与移动/重命名

命令说明
cp复制,cp -r 递归复制目录,cp -p 保留权限与时间
mv移动或重命名文件
# 备份配置文件(保留权限)
cp -p /etc/nginx/sys.conf /etc/nginx/sys.conf.bak

# 递归复制整个目录
cp -r ./dist /data/www/

# 重命名文件(mv 同时支持移动)
mv app_old.jar app.jar

1.5 文件权限

命令说明
chmod修改文件/目录权限,数字法 755644 最常用
chown修改属主与属组,chown user:group 文件
chgrp仅修改属组
umask设置新建文件的默认权限掩码
# 查看文件权限(-rw-r--r-- 等)
ls -l /data/project

# 赋予脚本可执行权限(最常用)
chmod +x run.sh
chmod 755 run.sh

# 修改属主为 www 用户、属组为 web 组
chown www:web /data/project -R

# 递归设置目录权限:目录 755、文件 644
find /data/project -type d -exec chmod 755 {} \;
find /data/project -type f -exec chmod 644 {} \;

提示:数字权限速记——4 读、2 写、1 执行;755 表示属主全权限、组和其他人只读可执行。

2. 文本查看与内容处理

文本处理三剑客:

2.1 查看文件内容

命令说明
cat一次性输出整个文件内容,适合小文件
less分页查看大文件,/关键词 搜索,q 退出,g 到首行、G 到尾行
head查看文件开头,head -n 20 显示前 20 行
tail查看文件末尾,tail -n 20 查看最后 20 行;实时跟踪日志见 11.1
# 查看文件最后 20 行
tail -n 20 /var/log/app.log

# 查看文件前 20 行
head -n 20 /etc/nginx/nginx.conf

2.2 搜索与过滤

命令说明
grep文本搜索王者,按正则表达式过滤行,常与管道符 | 结合使用,-i 忽略大小写,-n 显示行号,-r 递归搜索
# 1. 基础搜索与高亮
# 在日志中搜索 ERROR,忽略大小写(-i)并显示行号(-n)
grep -in "error" /var/log/app.log

# 递归搜索(-r)并高亮关键词(--color)
grep -rn --color "exception" ./logs

# 精确匹配单词(-w):搜 "cat" 不会把 "catalog" 搜出来
grep -w "cat" document.txt

# 2. 上下文查看(排查报错必用)
# 查看报错行,以及它的前 5 行和后 5 行 (Context)
grep -C 5 "NullPointerException" app.log

# 只看匹配行的后 10 行 (After) / 前 10 行 (Before)
grep -A 10 "Start Process" app.log
grep -B 10 "Process Failed" app.log

# 3. 多条件与反向过滤(清洗日志噪音)
# 多条件“或”匹配(-E):同时过滤 ERROR 或 WARN 或 FATAL
grep -E "ERROR|WARN|FATAL" app.log

# 反向过滤(-v):排除干扰信息(如健康检查、DEBUG日志)
grep "error" app.log | grep -v "healthcheck"
grep -E "ERROR|WARN" app.log | grep -vE "DEBUG|INFO"

# 4. 递归搜索避坑与统计
# 全局搜代码,排除无关目录(防止搜 node_modules 卡死终端)
grep -rn "TODO" . --exclude-dir={.git,node_modules,target,build}
# 只搜索特定后缀的文件
grep -rn "import" . --include="*.py"

# 统计关键字出现的次数(-c)
grep -c "Timeout" app.log

# 5. 特殊字符搜索避坑
# 避坑:如果要搜索以 "-" 开头的字符串(如 -e),会被误认为是参数
# 正确写法 1:使用 -- 终止参数解析
grep -- "-e" file.txt
# 正确写法 2:使用 -e 显式指定模式
grep -e "-e" file.txt

2.3 文本处理与统计

命令说明
awk列处理王者,默认按空格分割。-F 指定分隔符,$1 是第一列,$0 是整行
sed流式编辑器s/旧/新/g 替换,d 删除,p 打印。注意 -i 的跨平台差异
cut轻量级截取-d 指定分隔符,-f 取列。适合处理简单规则文本
sort排序-n 数值排序,-r 倒序,-u 去重,-k 按指定列排序
uniq去重,只能去除相邻重复行,必须先 sort-c 计数,-d 仅显示重复行
wc统计-l 行数,-w 单词数,-c 字节数
strings二进制提取,从二进制文件(如 Core Dump、编译后的程序)中扒出可读字符串
diff差异对比,常加 -u 输出标准 unified 格式
# 经典连招:统计日志中每个 IP 的出现次数,并按次数从高到低排序
awk '{print $1}' access.log | sort | uniq -c | sort -rn

# 提取 CSV 文件的第 2 列
awk -F',' '{print $2}' data.csv

# 找出 access.log 中响应时间(假设在第 10 列)大于 500ms 的慢请求
awk '$10 > 500 {print $0}' access.log

# 全局替换配置中的旧端口并写回
sed -i 's/8080/8081/g' /etc/app/config.yml

# 删除文件中的所有注释行(以 # 开头)和空行
sed -e '/^#/d' -e '/^$/d' config.yml

# 从二进制文件(如日志、核心转储)中扒出可读文字,过滤异常信息
strings ./logs | grep -i "exception"

# 对比两个配置文件的差异
diff nginx.conf nginx.conf.bak

3. 用户与用户组

3.1 用户管理

命令说明
whoami显示当前用户名
id查看当前用户的 UID/GID 及所属组
useradd创建用户,useradd -m -s /bin/bash 用户名 创建并指定 shell
passwd设置/修改用户密码
usermod修改用户属性,-aG 追加到附加组(⚠️ 不加 -a 会覆盖原有组)
userdel删除用户,userdel -r 连同主目录一起删除
# 1. 创建用户并设置密码
useradd -m -s /bin/bash zhangsan
passwd zhangsan

# 2. 将用户安全地追加到 sudo 组(Debian/Ubuntu 用 sudo,CentOS 用 wheel)
# 💡 记忆口诀:改组必加 a,无 a 必挨骂!
usermod -aG sudo zhangsan

3.2 用户组与身份切换

命令说明
groupadd创建用户组
su切换用户,su - 用户名 切换到其登录环境
sudo以其他身份(默认 root)执行命令
# 创建用户组
groupadd dev

# 切换为 root 身份执行
sudo apt update

注意:修改用户组时务必使用 -aG 追加,直接 usermod -G 会移除用户原有附加组。

4. 进程管理

4.1 查看进程

命令说明
ps查看进程快照,ps aux 显示所有进程,ps -ef 全格式输出
top动态监控进程资源占用(CPU/内存),P 按 CPU 排序、M 按内存排序
htoptop 的增强版,支持方向键操作(需安装)
# 查看所有进程
ps aux | head -20

# 动态监控,定位占用 CPU/内存最高的进程
top

4.2 终止进程与后台任务

命令说明
kill按 PID 杀进程,kill -9 强制杀死(SIGKILL),kill -15 优雅终止(SIGTERM,允许进程清理资源,应优先于-9使用)
pkill按名字杀进程,pkill -f 按完整命令行匹配
jobs / fg / bg查看后台任务、切换到前台、放到后台运行
nohup不挂断运行,配合 & 让程序在退出终端后继续执行
# 查找某服务的进程 PID 并杀死
pgrep -f "app.jar"
kill -9 12345

# 后台启动 Java 服务,日志写入文件,终端关闭也不中断
# nohup (不挂断) + 执行命令 + > (日志重定向) + 2>&1 (错误日志也写入同一文件) + & (放入后台)
nohup java -jar app.jar > app.log 2>&1 &

4.3 系统服务管理

命令说明
systemctl管理系统服务,start/stop/restart/reload/status/enable/disable
# 服务管理
systemctl status nginx # 查看运行状态
systemctl restart nginx # 重启(会导致连接短暂中断)
systemctl reload nginx # 平滑重载配置(生产环境首选,不断开连接)
systemctl enable nginx # 设置开机自启

5. 系统信息

5.1 系统与内核信息

命令说明
uname -a查看内核与系统版本信息
hostname查看/设置主机名
date查看/设置系统时间
# 查看发行版信息(选择包管理命令前先确认)
cat /etc/os-release

# 查看内核版本
uname -a

5.2 资源与负载监控

命令说明
uptime查看运行时长与系统负载
free -h查看内存使用情况(人性化显示)
df -h查看磁盘分区使用率
du -sh 目录统计目录占用空间大小
who / last查看当前登录用户 / 登录历史
# 查看内存(重点看 available)
free -h

# 查看各磁盘挂载点的使用率
df -h

# 统计项目目录总大小
du -sh /data/project

# 查看当前目录一级子目录大小排序(磁盘爆满定位必用)
du -h --max-depth=1 * | sort -rh | head -n 10  

# 查看系统负载(load average 三个值分别代表 1/5/15 分钟均值)
uptime

6. 网络命令

6.1 网络查看与连通性测试

命令说明
ip addr查看网卡与 IP 地址(ifconfig 的现代替代)
ping测试网络连通性,ping -c 4 指定发包次数
telnet测试远端主机端口是否可达(排障神器),如 telnet 192.168.1.10 80;部分系统需先安装 telnet 客户端
# ================= 1. 基础网络与端口 =================
# 查看本机 IP 与网卡信息
ip addr

# 测试远端主机 80 端口是否可达(连通后出现连接提示,Ctrl+] 再输入 quit 退出)
telnet 192.168.1.10 80

6.2 HTTP 请求与下载

命令说明
curl发起 HTTP 请求,排障和调试接口必备
wget下载文件,-c 断点续传
# ================= 2. curl 接口调试与排障 ================
# 测试接口连通性(排障三步:ping → 端口 → 应用日志)
curl -v http://127.0.0.1:8080/api/health

# 仅获取响应头(快速检查 HTTP 状态码、证书、重定向、Nginx版本)
curl -I http://127.0.0.1:8080/api/health

# 静默模式但保留错误信息(日常调试推荐,不刷屏)
curl -sS http://127.0.0.1:8080/api/health

# 发送 JSON POST 请求
curl -X POST -H "Content-Type: application/json" -d '{"key":"val"}' URL

# 脚本健康检查专用(参数拆解记忆法)
# -o /dev/null : 丢弃响应体(不下载文件内容)
# -s           : 静默模式(不显示进度条)
# -w "%{http_code}\n" : 只输出HTTP状态码并换行
curl -o /dev/null -s -w "%{http_code}\n" http://127.0.0.1:8080/api/health

# ================= 3. 文件下载 =================
# 下载文件并断点续传(下大文件必备)
wget -c https://example.com/pkg.tar.gz

6.3 端口监听排查

命令说明
ss / netstat查看端口监听与连接状态,ss -tlnp 查看监听端口及对应进程
# 查看 80 端口被哪个进程占用
ss -tlnp | grep :80

6.4 远程连接与文件传输

命令说明
ssh远程登录,ssh 用户@主机 -p 端口
scp基于 SSH 复制文件,-r 复制目录
rsync增量同步文件/目录,支持断点续传,-avz 常用参数
# 远程登录服务器
ssh root@192.168.1.10

# 远程复制文件到服务器
scp ./deploy.sh root@192.168.1.10:/opt/

# 同步本地目录到服务器(-a 归档、-v 显示过程、-z 压缩传输)
rsync -avz ./dist/ root@192.168.1.10:/var/www/html/

6.5 实战演练:网络问题四层排查法

遇到网络问题(比如前端访问不了后端的 API),严格按照以下四层模型逐层排查:

真实工作场景模拟:前端跑过来喊:“后端!你的登录接口挂了!”

你的反应(按四层模型):

  1. 第 1 层:你在自己电脑上 ping 服务器IP → 通了 ✅
  2. 第 2 层:你 telnet 服务器IP 8080 → 不通 ❌
    • 结论:网络没问题,是端口被挡了!
    • 动作:检查云服务器控制台,发现安全组没开 8080 端口,添加规则 → 问题解决!
  3. 第 3 层(假设第 2 层通了):你 systemctl status tomcat → 发现服务挂了 ❌
    • 动作:journalctl -u tomcat -ex 发现是内存溢出(OOM),调整 JVM 参数 → 重启解决!
  4. 第 4 层(假设第 3 层正常):你在服务器本地 curl -v http://127.0.0.1:8080/login → 返回 500 错误 ❌
    • 动作:看 Spring Boot 日志,发现是数据库密码过期,修改配置 → 问题解决!

提示:排查网络问题时按「连通性 → 端口 → 服务状态 → 日志」的顺序逐层定位,避免跳步。

7. 压缩与解压

7.1 tar 打包与解包

命令说明
tar打包/解包,.tar.gz.tar.xz 是最常见格式
## 1. tar (打包/解包)
# 记忆法:c=创建, x=解压, z=gzip, J=xz, v=显示, f=文件, C=指定目录, t=查看
# 打包并压缩 (.tar.gz)
tar -zcvf backup.tar.gz /data/project

# 解压到指定目录
tar -zxvf backup.tar.gz -C /opt/restore

# 排除目录打包 (前端/Node必备)
tar -zcvf backup.tar.gz --exclude='node_modules' --exclude='.git' /data/project

# 查看压缩包内容 (不解压)
tar -ztvf backup.tar.gz

# 高压缩率打包 (.tar.xz,适合大日志/数据库备份)
tar -Jcvf backup.tar.xz /var/log/

7.2 zip / gzip 格式处理

命令说明
gzip / gunzip压缩/解压单个 .gz 文件
zip / unzip处理 .zip 格式(跨平台通用)
# 2. zip / unzip (跨平台)
zip -r site.zip ./site
unzip site.zip -d ./site_out

# 解决 Windows 中文 zip 乱码
unzip -O CP936 site.zip # 或推荐安装 unar 命令

## 3. gzip (单文件压缩)
gzip access.log # 源文件会被删除
gzip -k access.log # 加 -k (keep) 保留源文件
gunzip access.log.gz

8. 搜索命令

8.1 文件搜索

命令说明
find全能搜索王,按文件名/类型/时间/大小在文件系统中查找
locate极速搜索,基于数据库快速查找(需先运行 updatedb 更新索引)
# 1. 基础与多条件检索
# 显示文件详细信息(-ls 相当于对结果执行 ls -dils)
find . -name "*文件名*" -ls

# 多层目录+多类型文件同时检索(加上 -type f、转义括号、-print0 和 -0)
find ./ -type f \( -name "*.sh" -o -name "*.py" \) -print0 | xargs -0 grep --color "import"

# 2. 时间查找(排查问题 / 清理日志)
# 查找 7 天前修改的日志(清理过期日志必用,写进 crontab)
find /var/log -name "*.log" -mtime +7

# 查找最近 7 天内修改过的文件(审计:最近谁动了数据?)
find /data -mtime -7 -type f

# 查找最近 10 分钟内修改过的文件(神技:刚发完版,看哪些文件变了)
find /opt/project -mmin -10 -type f

# 3. 大小查找(磁盘爆满排查)
# 查找大于 100M 的文件(磁盘爆满排查第一步)
find / -size +100M -type f

# 查找超过 1GB 的大文件,并屏蔽权限报错(2>/dev/null)
find / -type f -size +1G 2>/dev/null

# 找到大文件后,配合 ls -lh 看看具体多大(人类可读格式)
find /var/log -size +500M -type f -exec ls -lh {} \;

# 4. 结合 xargs 与 -exec 的高效处理
# 避坑:普通 xargs 遇到带空格的文件名会报错!
# 终极安全写法:-print0 配合 xargs -0 (用 null 字符分隔)
find . -name "*.log" -print0 | xargs -0 grep --color "warning"

# 使用 -exec 执行复杂操作({} 代表找到的文件,\; 代表结束)
# 批量删除 30 天前的临时文件
find /tmp -type f -name "*.tmp" -mtime +30 -exec rm -f {} \;

# 批量移动文件(将找到的 .bak 文件移到 /backup 目录)
find . -name "*.bak" -exec mv {} /backup/ \;

8.2 命令定位

命令说明
which查找命令的可执行文件路径(只看 $PATH 环境变量里的第一个)
whereis查找命令的二进制、源码和帮助文档(man)位置(搜索范围更广)
type终极鉴别器,不仅能找路径,还能识别出命令是别名(alias)还是内置命令(builtin)
# 1. 基础路径查找
which python3
whereis nginx
whereis -b nginx  # 只查找二进制文件 (binary)
whereis -m nginx  # 只查找帮助文档 (manual)

# 2. 多版本冲突排查(找出 PATH 中所有同名命令)
# 场景:系统自带了 python,你又装了 conda,想知道到底有几个 python
which -a python3

# 3. 鉴别命令的真实身份(which 的进阶替代者)
type ll       # 输出: ll is aliased to `ls -alF' (识别别名)
type cd       # 输出: cd is a shell builtin (识别内置命令)
type nginx    # 输出: nginx is /usr/sbin/nginx (识别外部程序)

9. 软件包管理

常用包管理器

系统家族代表发行版安装 (自动确认)更新索引/缓存搜索包
Debian 系Ubuntu, Debianapt install -y 包名apt updateapt search 关键词
RedHat 系CentOS, RHEL, Rockyyum install -y 包名yum makecacheyum search 关键词
轻量/容器Alpine Linuxapk add 包名apk updateapk search 关键词
# 1. Ubuntu 安装 nginx (必须先 update,否则报找不到包)
sudo apt update && sudo apt install -y nginx

# 2. CentOS/Rocky 安装排查工具
sudo yum install -y vim tcpdump net-tools

# 3. Dockerfile 中 Alpine 安装 (必加 --no-cache 减小镜像体积)
apk add --no-cache curl bash

注意:CentOS 8+ / RHEL 8+ 中,yum 命令底层已替换为 dnf,但用法完全一致,直接敲 yum 依然有效

10. 定时任务

crontab 与一次性任务

命令说明
crontab -e编辑当前用户的定时任务
crontab -l查看当前用户的定时任务
crontab -r删除全部定时任务(慎用)
at一次性定时任务(需安装 at 服务)

cron 时间格式:分 时 日 月 周 命令

# 每天凌晨 3 点执行备份脚本
crontab -e
# 写入以下内容
0 3 * * * /opt/scripts/backup.sh >> /var/log/backup.log 2>&1

# 每 5 分钟执行一次健康检查
*/5 * * * * /opt/scripts/healthcheck.sh

# 查看已配置的任务
crontab -l

# 查看 cron 执行日志(Debian/Ubuntu)
grep CRON /var/log/syslog

注意:cron 执行时环境变量极少,脚本内建议使用绝对路径,并将输出重定向到日志文件便于排查。

11. 日志查看

日志实时跟踪与检索

命令说明
tail -f实时跟踪日志文件(排障最常用)
journalctl查看 systemd 日志,-u 服务名 过滤服务,-f 实时跟踪
dmesg查看内核环缓冲消息(硬件/驱动报错排查)
# 实时跟踪应用日志(Ctrl+C 退出)
tail -f /var/log/app.log

# 查看最后 200 行并持续跟踪
tail -200f /var/log/app.log

# 查看 nginx 服务最近 1 小时的日志
journalctl -u nginx --since "1 hour ago"

# 查看内核相关报错
dmesg | tail -50

12. 容器与编排(Docker / Kubernetes)

12.1 Docker 镜像与容器

命令说明
docker ps -a查看所有容器(含已停止),排障第一步:看状态是否为 Exited
docker run运行容器,-d(后台) -p 宿主机:容器(端口) -v 宿主机:容器(挂载) --name(命名)
docker exec -it 容器名 sh进入运行中的容器(精简镜像无 bash,用 sh 代替)
docker logs -f --tail 200 容器名查看日志,-f(实时跟踪) --tail(最后N行) --since 1h(最近1小时)
docker build -t 镜像名:标签 .根据当前目录 Dockerfile 构建镜像
docker cp容器与宿主机互拷文件,如:docker cp 容器名:/var/log/app.log ./
docker stats实时查看容器 CPU / 内存占用(排查资源瓶颈)
docker system prune -a清理磁盘神器:删除所有停止的容器、无用网络和未使用的镜像
# 1. 标准启动(必加 -v 挂载,保证数据持久化与热更新)
docker pull nginx:latest
docker run -d --name web -p 8080:80 -v /data/html:/usr/share/nginx/html nginx
docker logs -f --tail 200 web

# 2. 进入容器排查问题
docker exec -it web sh

# 3. 代码更新后重新构建并启动
docker build -t my-app:v2 .
docker stop web && docker rm web
docker run -d --name web -p 8080:80 my-app:v2

# 4. 服务器磁盘告警时的终极清理(⚠️ 会删除未运行容器及未使用镜像/数据卷)
docker system prune -a --volumes

12.2 Docker Compose 多服务编排

命令说明
docker compose up -d后台启动整套服务(加 --build 可强制重新构建镜像)
docker compose down停止并移除容器与网络(默认不删数据卷,加 -v 才会删除)
docker compose ps查看各服务运行状态
docker compose logs -f实时查看日志(加 服务名 指定查看,避免多服务日志混杂)
docker compose exec 服务名 sh进入指定服务容器(精简镜像无 bash,用 sh 代替)
docker compose restart重启服务(加 服务名 可单独重启,无需重建镜像)
# 1. 后台启动并检查状态
docker compose up -d
docker compose ps

# 2. 修改代码/Dockerfile 后热更新(仅重建指定服务)
docker compose up -d --build web

# 3. 单独重启某个服务(配置变更后常用)
docker compose restart redis

# 4. 查看指定服务实时日志
docker compose logs -f web

# 5. 进入容器排查问题
docker compose exec web sh

# 6. 停止并清理环境(加 -v 会连数据库等持久化数据一起删除)
docker compose down

12.3 Kubernetes(kubectl)常用命令

命令说明
kubectl get查看资源状态:pods / deployments / services / nodes / events
kubectl -n 命名空间指定命名空间操作,如 -n kube-system
kubectl describe查看资源详情与事件(排障第一步,优先于 logs)
kubectl logs -f实时查看 Pod 日志(加 --previous 可查看崩溃前日志)
kubectl exec -it Pod名 -- sh进入 Pod 容器(精简镜像无 bash,用 sh 代替)
kubectl apply -f应用 YAML 配置(声明式创建/更新资源)
kubectl delete -f按 YAML 删除资源(不可撤销,执行前务必 get 核对)
kubectl rollout滚动更新管理:restart(重启) / status(状态) / history(历史)
kubectl top查看资源占用:top node / top pod(排查性能瓶颈)
kubectl port-forward端口转发,本地调试集群内服务用
# 1. 查看资源状态(-o wide 附带节点 IP,便于定位调度问题)
kubectl get pods,svc,deploy
kubectl get pods -n kube-system -o wide

# 2. 排障三件套(按顺序执行,可定位 80% 问题)
kubectl describe pod web-7d9b5c6b8f-abcde
kubectl logs -f web-7d9b5c6b8f-abcde
kubectl get events -n default --sort-by='.lastTimestamp'

# 3. 进入容器排查(精简镜像用 sh)
kubectl exec -it web-7d9b5c6b8f-abcde -- sh

# 4. 声明式部署与回滚
kubectl apply -f deployment.yaml
kubectl rollout restart deployment web
kubectl rollout status deployment web

# 5. 本地调试集群内服务
kubectl port-forward svc/web-service 8080:80

# 6. 安全删除资源(执行前必须确认名称)
kubectl delete -f deployment.yaml

排障心法:严格遵循 get(看状态)→ describe(看事件/详情)→ logs(看应用日志)的顺序,避免盲目翻日志浪费时间。

生产红线:kubectl delete 不可撤销;执行任何删除/更新操作前,必须先 kubectl get 核对资源名称,并 kubectl get events 确认集群无异常事件。

写在最后

以上命令覆盖了日常运维与开发的高频场景,建议按以下方式巩固:

  1. 优先掌握:文件目录、文本处理、进程管理是工作中使用频率最高的三类命令。
  2. 善用帮助:遇到生疏命令优先用 man--help 查阅,比搜索更准确。
  3. 动手固化:多写脚本把重复操作封装成自己的工具集,避免每次手敲。
  4. 安全底线:删除、覆盖、改权限前务必二次确认,生产环境慎用 -rf

Linux 命令没有捷径,熟能生巧,建议收藏本文并持续补充自己的常用命令清单。

以上就是Linux运维开发必备高频命令大全(工作版)的详细内容,更多关于Linux高频命令的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文