当前位置:首页>Linux>Linux30天入门计划|Day7:文本三剑客sed&awk!批量处理日志与文件

Linux30天入门计划|Day7:文本三剑客sed&awk!批量处理日志与文件

  • 2026-10-11 05:40:14
Linux30天入门计划|Day7:文本三剑客sed&awk!批量处理日志与文件

前面我们学完了文件操作、权限、用户、find/grep检索。

今天正式进入 Linux运维高阶必备技能:文本处理三剑客。

grep(检索)、sed(替换修改)、awk(截取统计)

掌握这三个,你就拥有了Linux处理文本、日志、数据的终极能力!

日常清洗日志、批量改配置、筛选字段、统计数据,全部靠它们。

一、今日学习目标

✅ 理解三剑客分工:grep筛选、sed改文件、awk取数据

✅ 掌握sed批量替换、删除、注释文件内容

✅ 掌握awk截取列、筛选日志、统计数据

✅ 熟练企业级日志过滤、批量改配置实战

✅ 告别手动修改文件,实现自动化文本处理

二、三剑客核心分工(一定要记死)

1. grep:擅长「搜索筛选」——过滤关键词

2. sed:擅长「批量编辑」——增删改内容、替换字符

3. awk:擅长「数据分析」——切片、取值、统计、格式化输出

昨天已经学完grep,今天主攻 sed & awk!

三、sed 命令:批量文件编辑神器

sed 是非交互式文本编辑工具,无需打开文件,直接批量修改内容,线上改配置神器。

1、sed 替换内容(最高频)

bash  

# 格式:sed 's/旧内容/新内容/g' 文件名

sed 's/123/456/g' test.txt

s = 替换

g = 全局全部替换(不加g只替换每行第一个)

2、直接修改文件内容(真实写入)

bash  

sed -i 's/root/admin/g' test.txt

-i 参数:直接保存修改到文件(生产使用最多)

3、批量注释内容

bash  

# 将所有含test的行前面加#注释

sed -i '/test/s/^/#/g' test.txt

4、批量取消注释

bash  

sed -i '/^#test/s/^#//g' test.txt

5、删除指定行

bash  

# 删除空行

sed -i '/^$/d' test.txt

# 删除包含error的行

sed -i '/error/d' test.txt

四、awk 命令:日志数据分析之王

grep用来找行,awk用来取列!

所有结构化日志、端口、进程、表格数据,全部用awk截取。

1、默认空格切割,取第N列

bash  

awk '{print $1}' test.txt   # 取第一列

awk '{print $2,$4}' test.txt # 取第二、四列

2、查看端口只取端口号(实战高频)

bash  

netstat -an | awk '{print $4}'

3、筛选带关键词的行并取值

bash  

awk '/error/{print $0}' log.txt

4、指定分隔符截取(自定义符号)

bash  

# 以冒号 : 切割,取第一列

awk -F: '{print $1}' /etc/passwd

5、统计行数、求和

bash  

awk 'END{print NR}' test.txt  # 统计文件总行数

五、三剑客组合实战(工作真实场景)

场景1:排查日志,只看报错、截取关键字段

bash  

cat app.log | grep "ERROR" | awk '{print $1,$5,$10}'

场景2:批量替换配置文件端口

bash  

sed -i 's/8080/8090/g' *.conf

场景3:清理日志空行和注释

bash  

cat config.txt | grep -v "#" | grep -v "^$"

六、今日实操作业(必敲)

bash  

# 1. 创建测试文件

touch day7.txt

echo "name:linux age:20 score:90" > day7.txt

# 2. sed全局替换内容

sed 's/90/100/g' day7.txt

# 3. 真实写入修改

sed -i 's/linux/LinuxStudy/g' day7.txt

# 4. awk截取指定列

awk -F: '{print $2}' day7.txt

# 5. 过滤空行

grep -v "^$" day7.txt

七、今日核心总结

1. grep:筛选行,过滤关键词

2. sed:批量增删改替换,生产改配置神器

3. awk:切片、取值、统计,结构化日志分析必备

4. 企业标准排查流程:grep过滤 → awk取值 → sed清洗

5. 熟练三剑客,是新手和专业运维的分水岭

最新文章

随机文章