Linux 零基础到文本处理完整系统总结(超全复盘)

本文汇总本次全程学习的所有内容:基础文件命令、权限、进程管理、后台任务、重定向管道、三剑客(grep/sed/awk)、文本处理工具、正则、xargs,属于运维/后端面试必考全集。

一、Linux 基础文件命令

1. 文件目录操作

  • ls:查看目录内容 -l详情 -a隐藏文件

  • cd:切换目录

  • pwd:查看当前路径

  • mkdir:创建目录 -p递归创建

  • rm:删除文件/目录 -rf强制递归删除

  • cp:复制文件/目录 -r递归

  • mv:移动/重命名

  • touch:创建空文件

2. 文件查看命令

  • cat:全量输出小文件,-n显示行号

  • less:分页查看大文件(空格翻页、/搜索、q退出)

  • head:查看前10行,-n 指定行数

  • tail:查看后10行,-f 实时跟踪日志

  • wc:统计 -l行数 -w单词数 -c字符数

3. 查找与帮助命令

  • find:遍历磁盘找文件(按名字/大小/时间)

  • which:查找外部命令二进制路径(仅PATH)

  • type:判断命令类型(内置/别名/外部程序)

  • man:查看官方帮助文档

二、Linux 权限系统(核心必考)

1. 权限三段式

权限分为三类用户:u属主 g属组 o其他用户

r=4 读、w=2 写、x=1 执行

例:755=rwxr-xr-x 644=rw-r--r--

2. chmod 修改权限

  • 数字法:chmod 755 file

  • 符号法:chmod u+x,g-w file

  • -R:递归修改目录所有文件

3. chown 修改所有者/所属组

  • chown user:group file

  • -R 递归修改

  • 修改他人文件需要 root/sudo

三、进程与后台任务体系(重难点)

1. 进程查看

  • ps aux:静态查看所有进程(常用)

  • ps -ef:查看PID、PPID父进程

  • top:动态实时进程监控(类任务管理器)

2. 进程终止

  • kill PID:15信号优雅关闭(默认)

  • kill -9 PID:强制杀死(暴力、不推荐随便用)

  • killall 进程名:按名字批量杀进程

3. 前台/后台任务管理

  • Ctrl+Z:前台暂停,放入后台暂停状态

  • jobs:查看当前终端后台任务(仅当前终端)

  • bg 编号:后台暂停任务继续运行

  • fg 编号:后台任务切回前台

4. nohup 持久进程

  • nohup 命令\&:脱离终端运行

  • \& 只是后台运行,关闭终端会终止

  • nohup 忽略SIGHUP,关闭终端不退出

  • 默认日志输出到 nohup.out

5. 高阶信号原理(你掌握的独家难点)

  • SIGHUP:关闭终端,进程挂断退出

  • SIGTTIN:后台读终端 → 暂停 Stopped

  • SIGTTOU:后台写终端 → 暂停/终止(由 stty tostop 控制)

四、重定向与管道(数据流核心)

1. 三大标准流

  • 0 标准输入 stdin 键盘

  • 1 标准输出 stdout 屏幕

  • 2 标准错误 stderr 屏幕

2. 重定向符号

  • > 覆盖输出

  • >> 追加输出

  • 2> 错误重定向

  • \&> 标准+错误全部重定向

  • \< 输入重定向

  • \<\<EOF 多行here-doc输入

  • 2>\&1 错误合并到标准输出(顺序不能反)

3. 管道 |

  • cmd1 | cmd2:前命令 stdout 作为后命令 stdin

  • 默认 不传递stderr

  • |\& 标准错误+标准输出一起走管道

4. tee 分流

屏幕输出 + 同时写入文件 cmd | tee file

五、xargs 管道黄金搭档(面试高频)

管道传递文本流,xargs 把文本转为命令参数

很多命令不读stdin:rm、cp、mv、mkdir 必须用xargs

常用参数

  • -n1:每次传1个参数,执行多次命令

  • -I{}:占位符替换(单文件处理)

  • -0 + find -print0:解决文件名带空格、特殊字符

  • -r:空输入不执行命令(防报错)

六、文本处理六小工具(日志清洗基础)

1. grep 过滤行

  • -v 反向过滤

  • -i 忽略大小写

  • -n 显示行号

2. cut 列截取

cut -d'分隔符' -f列号 适合规整文本

3. tr 字符清洗

  • -s 压缩重复字符(日志多空格清洗神器)

  • -d 删除字符

  • 大小写转换

4. sort 排序

  • -n 数字排序

  • -r 倒序

  • -u 去重

5. uniq 去重统计

必须先sort!仅去相邻重复

-c 统计重复次数(日志统计核心)

6. wc 统计

-l 统计行数(最常用)

七、三剑客核心:sed

sed:行编辑器,擅长替换、删除、修改文本

核心参数

  • -n 静默输出(只打印匹配行)

  • -i 真正修改原文件(-i.bak 备份)

  • -E 扩展正则

核心动作

  • p 打印行

  • d 删除行

  • s/旧/新/g 替换,g全局

高阶能力

  • 地址匹配:行号区间、正则匹配行

  • 反向引用:\1 \2 分组复用内容

  • 分隔符可替换 # | 避免/冲突

八、三剑客核心:awk(日志分析之王)

awk:列处理、字段切割、统计、判断、计算

自动忽略连续空白,无需 tr 清洗

1. 核心语法

awk '条件{动作}' file

2. 核心变量

  • $0 整行

  • $1 $2 字段列

  • NR 行号

  • NF 当前行列数

3. 关键结构

  • BEGIN{} 读取文件前执行

  • END{} 读取文件结束后执行(统计必用)

  • 支持 if 判断、for 循环、数组统计

4. 实战绝杀:awk数组统计

无需 sort/uniq,直接聚合统计 IP、状态码

awk '{arr[$1]++}END{for(i in arr)print arr[i],i}'

九、Shell 正则系统(三剑客通用)

1. 基础元字符

  • ^ 行首

  • $ 行尾

  • . 任意单个字符

  • *前字符0次或多次

  • [] 字符集

  • [^] 取反

  • \ 转义

2. 扩展正则 ERE(-E)

  • + 至少1次

  • ? 0或1次

  • | 或

  • () 分组捕获

3. 三剑客正则差异

  • grep/sed 默认基础正则,需-E开启扩展

  • awk 原生扩展正则,无需转义

十、企业日志分析标准流水线(最终实战模型)

清洗 → 过滤 → 提取字段 → 统计 → 排序Top

模板:

Plain Text sed 清洗 | grep 过滤 | awk 提取 | sort | uniq -c | sort -nr | head

可实现:统计Top访问IP、状态码分布、接口访问量、错误日志分析

十一、终极工具选型口诀(面试必背)

  • 看内容:cat/less/head/tail

  • 改权限:chmod/chown

  • 看进程:ps/top/kill

  • 后台运行:jobs/bg/fg/nohup

  • 过滤行:grep

  • 清洗替换:sed

  • 提取列、统计分析:awk

  • 文本计数去重:sort/uniq/wc/tr

  • 批量传参:xargs

(注:部分内容由豆包工作 AI 生成)

🔗 相关笔记