推广 热搜: 行业  机械  设备    系统  教师  经纪  参数    蒸汽 

shell文本处理工具——sed用法详解

   日期:2024-11-11     移动:http://ktsh.xhstdz.com/mobile/quote/74775.html

sed是Stream Editor(流编辑器)的缩写,用来处理文件的。 工作原理: sed是一行一行读取文件内容并按照要求进行处理,把处理后的结果输出到屏幕

shell文本处理工具——sed用法详解

  1. 首先sed读取文件中的一行内容,把其保存在一个临时缓存区中(也称为模式空间
  2. 然后根据需求处理临时缓冲区中的行,完成后把该行发送到屏幕上

总结

  1. 由于sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会直接修改原文件
  2. Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作,对文件进行过滤和转换操作

sed常见的语法格式有两种,一种叫命令行模式,另一种叫脚本模式。

(1)语法格式

  • 常用选项
选项说明备注-e进行多项(多次)编辑-n取消默认输出不自动打印模式空间-r使用扩展正则表达式-i原地编辑(修改源文件)-f指定sed脚本的文件名
  • 常见处理动作

丑话说在前面:以下所有的动作都要在单引号

动作说明备注‘p’打印‘i’在指定行之前插入内容类似vim里的大写O‘a’在指定行之后插入内容类似vim里的小写o‘c’替换指定行所有内容‘d’删除指定行

(2)举例说明

①对文件进行增、删、改、查操作

语法:sed 选项 '定位+命令 需要处理的文件

1)打印文件内容

 

2) 增加文件内容 i 在上面插入 a 在下面插入

 

3) 修改文件内容 c 替换指定的整行内容

 

4) 删除文件内容 d 删除

 
对文件进行搜索替换操作

语法:sed 选项 s/搜索的内容/替换的内容/动作 需要处理的文件 其中s表示search搜索;斜杠/表示分隔符,可以自己定义;动作一般是打印p和全局替换g

 

以下待整理------

③ 其他命令
命令解释备注r从另外文件中读取内容w内容另存为&保存查找串以便在替换串中引用和()相同=打印行号!对所选行以外的所有行应用命令,放到行数之后‘1,5!’q退出

举例说明

 
④ 其他选项
 
sed结合正则使用

sed 选项 'sed命令或者正则表达式或者地址定位=='== 文件名

  1. 定址用于决定对哪些行进行编辑。地址的形式可以是数字、正则表达式、或二者的结合。
  2. 如果没有指定地址,sed将处理输入文件的所有行。
正则说明备注/key/查询包含关键字的行sed -n ‘/root/p’ 1.txt/key1/,/key2/匹配包含两个关键字之间的行sed -n ‘/^adm/,/^mysql/p’ 1.txt/key/,x从匹配关键字的行开始到文件第x行之间的行(包含关键字所在行)sed -n ‘/^ftp/,7p’x,/key/从文件的第x行开始到与关键字的匹配行之间的行x,y!不包含x到y行/key/!不包括关键字的行sed -n ‘/bash$/!p’ 1.txt

##2. 脚本格式

㈠ 用法

 

㈡ 注意事项

 

㈢举例说明

 

##3. 补充扩展总结

 

#四、课堂练习

  1. 将任意数字替换成空或者制表符
  2. 去掉文件1-5行中的数字、冒号、斜杠
  3. 匹配root关键字替换成hello itcast,并保存到test.txt文件中
  4. 删除vsftpd.conf、smb.conf、main.cf配置文件里所有注释的行及空行(不要直接修改原文件
  5. 使用sed命令截取自己的ip地址
  6. 使用sed命令一次性截取ip地址、广播地址、子网掩码
  7. 注释掉文件的2-3行和匹配到以root开头或者以ftp开头的行
 

#五、课后实战

1、写一个初始化系统的脚本 1)自动修改主机名(如:ip是192.168.0.88,则主机名改为server88.itcast.cc

a. 更改文件非交互式 sed

/etc/sysconfig/network

b.将本主机的IP截取出来赋值给一个变量ip;再然后将ip变量里以.分割的最后一位赋值给另一个变量ip1

2)自动配置可用的yum源

3)自动关闭防火墙和selinux

2、写一个搭建ftp服务的脚本,要求如下: 1)不支持本地用户登录 local_enable=NO 2) 匿名用户可以上传 新建 删除 anon_upload_enable=YES anon_mkdir_write_enable=YES 3) 匿名用户限速500KBps anon_max_rate=500000

本文地址:http://ktsh.xhstdz.com/quote/74775.html    物流园资讯网 http://ktsh.xhstdz.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


0相关评论
相关最新动态
推荐最新动态
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号