Shell 编程三剑客

本文详细介绍了Linux Shell编程中的三大工具:grep、sed和awk。grep用于过滤查找内容,支持静默、反向匹配、递归查找等功能;sed提供了丰富的文本编辑命令,如删除、替换、追加等,并能进行实战案例操作;awk则以其强大的模式匹配和脚本变量应用,擅长数据处理和格式化输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、grep

参数:

1.1 -q 静默

1.2 grep -v   去反​编辑

1.3 grep -R 可以查看目录下面的文件

1.4 grep -o 只找到这个关键字就可以

1.5 egrep -l 只要文件名

1.6 egrep -n 带行号

二、SED

实例:

2.1 删除命令:d

2.2 替换命令: s

2.3 读取文件命令:r

2.4 写入文件命令:w

2.5 追加命令:a

2.6 插入命令:i

2.7 替换整行命令:c

2.8 获取下一行命令:n

2.9 反向选择:!

2.10 多重编辑:e

2.11 实战案例

三、awk

3.1 前言

3.2 工作原理

3.3 语法

3.4 格式化输出 print函数

3.5 模式(正则表达式)和动作

3.6 awk脚本变量

        3.6.1 条件&判断

        3.6.2 循环

        3.6.3 数组

3.7 案例:


一、grep

功能:过滤查找内容

分类: grep

egrep 扩展支持正则

fgrep 就是不支持正则

参数:

1.1 -q 静默

1.2 grep -v   去反

1.3 grep -R 可以查看目录下面的文件

 grep -R /home/
匹配到二进制文件 .cache/mozilla/firefox/ro8zkjdr.default-default/cache2/entries/5773F8741C801CA8FA6328E33D4912694A3E2A8A

1.4 grep -o 只找到这个关键字就可以

[root@localhost ~]# grep -o "o"  1.txt
o
o
o
o
o
o

1.5 egrep -l 只要文件名

[root@localhost ~]# egrep -l 'root' /etc/passwd
/etc/passwd

1.6 egrep -n 带行号

[root@localhost ~]# egrep -n 'root' /etc/passwd
1:root:x:0:0:root:/root:/bin/bash
10:operator:x:11:0:operator:/root:/sbin/nologin

二、SED

 

实例:

2.1 删除命令:d

sed -r '/root/d'   passwd    删除带有root的行

sed -r '3d'        passwd    删除第3行

sed -r '3{d}'      passwd    删除第3行
    
sed -r '3{d;}'     passwd    {存放sed的多个命令}3{h,d},h暂存空间

sed -r '3,$d'      passwd     删除3-最后一行

sed -r '$d'        passwd    删除最后一行

2.2 替换命令: s

sed -r    's/root/aofo/'     passwd    把root   替换成aofo

sed -r    's/^root/aofo/'    passwd    把以root  开头的行root替换成aofo

sed -r    's/root/aofo/g'    passwd    全部把root替换成aofo

sed -r    's/[0-9][0-9]$/&.5'    passwd    查找双数,结尾的词组&,替换成.5
                                            &有查询结果的含义
sed -r    's/(mail)/E\1/g'    passwd    把全部的词mail  换成Eail
                                        ()括号组合字符,\1调用括号

sed -r    's/#(mail)#E\1/g'   passwd

2.3 读取文件命令:r

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值