sed/awk1

本文介绍了如何使用sed和awk工具处理Linux系统中的文本。通过四个具体的案例,包括提取特定用户信息、筛选网络流量、监控根分区容量以及处理shadow密码记录。案例详细展示了如何运用sed的条件指令以及awk的文本过滤、条件处理功能,强调了awk在处理复杂文本任务上的优势。文章最后提出,awk的灵活性和强大功能使其成为文本处理的有力工具,适合用于改进和优化脚本内容。
摘要由CSDN通过智能技术生成

案例1:sed综合脚本应用
案例2:使用awk提取文本
案例3:awk处理条件
案例4:awk综合脚本应用
1 案例1:sed综合脚本应用
1.1 问题
本案例要求编写脚本getupwd.sh,实现以下需求:

找到使用bash作登录Shell的本地用户
列出这些用户的shadow密码记录
按每行“用户名 --> 密码记录”保存到getupwd.log,如图-1所示

图-1

1.2 方案
基本思路如下:

先用sed工具取出登录Shell为/bin/bash的用户记录,保存为临时文件/tmp/urec.tmp,并计算记录数量
再结合while循环遍历取得的账号记录,逐行进行处理
针对每一行用户记录,采用掐头去尾的方式获得用户名、密码字串
按照指定格式追加到/tmp/getuupwd.log文件
结束循环后删除临时文件,报告分析结果
1.3 步骤
实现此案例需要按照如下步骤进行。

步骤一:编写getupwd.sh脚本

[root@svr5 ~]# vim ./getupwd.sh
#/bin/bash
A= ( s e d − n ′ / b a s h (sed -n '/bash (sedn/bash/s/:.//p’ /etc/passwd) ## 提取符合条件的账号记录
for i in KaTeX parse error: Expected 'EOF', got '#' at position 43: … #̲#遍历账号记录 do …(grep i / e t c / s h a d o w ) p a s s 2 = i /etc/shadow) pass2= i/etc/shad

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值