你的代码 99% 跑在 Linux 上
开发在 Windows 或 Mac,但部署目标几乎清一色是 Linux:云服务器、容器、K8s 节点,底层全是它。更残酷的是线上环境没有 IDE——服务器上只有 SSH 和一个黑窗口。接口在线上偶发超时、CPU 飙高、磁盘写满,这些问题没有一个是能在本地复现完就了事的,最终都得登上那台机器,用命令行找出真相。JVM 系列里用的 jstack、jstat,网络系列里用的 tcpdump、ss,全都是 Linux 命令——本系列就是把这些散落的工具串成体系。
命令行是杠杆,不是复古
有人觉得黑窗口过时,恰恰相反——命令行是自动化时代的母语。三条理由:第一,可组合——一个命令做一件小事,管道把它们串成流水线,grep | awk | sort 三秒解决 GUI 里要点二十下的事;第二,可自动化——GUI 操作没法写进脚本,命令行随手就是 crontab 任务;第三,可复制——把排查过程贴给同事、写进事故报告,一条命令顶十张截图。运维的终极形态是一切皆代码,而代码的原料就是命令。
新手最容易放弃的三个坎
先给你打预防针,三个坎都有解:一是命令太多记不住——不用记,记住高频的二十个,其余交给 --help 和 Tab 补全;二是报错看不懂——大部分报错直接原文贴进搜索引擎,你绝不是第一个踩坑的人;三是怕把服务器搞挂——这个态度是对的,系列里所有危险操作(rm、chmod、kill)都会标注防呆姿势,养成先确认再回车的肌肉记忆。
这个系列的路线图
二十篇分四段:地基(目录结构、文件操作、vim)、文本处理三剑客(grep、awk、sed、管道组合——Linux 精华所在)、系统管理(权限、进程、后台任务、systemd、软件包、磁盘)、实战进阶(SSH、环境变量、定时任务、日志、性能观测、收官清单)。每篇都以能直接抄走的命令结尾——Linux 是拿来敲的,不是拿来背的。
准备工作
# 没有服务器的三个替代方案(任选其一):
# 1. Windows 上的 WSL2:wsl --install 一条命令
# 2. 虚拟机装 Ubuntu Server / CentOS
# 3. 云厂商的免费/低价学生机
# 登录后的第一组命令——先认识一下你的机器
$ whoami # 我是谁
$ uname -a # 内核版本
$ cat /etc/os-release # 发行版
$ df -h # 磁盘还剩多少下一篇从地图讲起:Linux 的目录结构为什么长这样,以及一切皆文件这个说法到底什么意思。
评论 (0)