复习sed实例操作
第6周复习课(5月2日)
课程内容:
复习
扩展
1、打印某行到某行之间的内容http://ask.apelearn.com/question/559
2、sed转换大小写 http://ask.apelearn.com/question/7758
3、sed在某一行最后添加一个数字http://ask.apelearn.com/question/288
4、删除某行到最后一行 http://ask.apelearn.com/question/213
5、打印1到100行含某个字符串的行 http://ask.apelearn.com/question/1048
1、打印某行到某行之间的内容http://ask.apelearn.com/question/559
例如:有个文件test的内容如下:
ert
fff
**
[abcfd]
123
324
444
[rty]
**
fgfgf
怎么能截取
[abcfd]
123
324
444
[rty]
这一部分出来呢?
解答:
直接vim一个test.txt或者touch test.txt,然后vim test.txt粘贴内容保存并退出。
# sed -n '/\[abcfd\]/,/\[rty\]/p' test.txt 具体操作截取符合条件的内容
2、sed转换大小写 http://ask.apelearn.com/question/7758
sed中,使用\u表示大写,\l表示小写
新建yw.txt文件并编辑内容,可以先cat查看文件内容。
①把每个单词的第一个小写字母变大写
[root@jimmylinux-002 test]# sed 's/\b[a-z]/\u&/g' yw.txt
②把所有单词小写变大写
[root@jimmylinux-002 test]# sed 's/[a-z]/\u&/g' yw.txt
③把所有单词大写变小写
[root@jimmylinux-002 test]# sed 's/[A-Z]/\l&/g' yw.txt
3、sed在某一行最后添加一个数字http://ask.apelearn.com/question/288
源文件内容
[root@jimmylinux-002 test]# sed 's/\(^a.*\)/\1 12/' test1.txt
4、删除某行到最后一行 http://ask.apelearn.com/question/213
定义一个标签a,匹配c,然后N把下一行加到模式空间里,匹配最后一行时,才退出标签循环,然后命令d,把这个模式空间里的内容全部清除。
if 匹配"c"
:a
追加下一行
if 不匹配"$"
goto a
最后退出循环,d命令删除。
[root@jimmylinux-002 test]# sed '/c/{p;:a;N;$!ba;d}' test2.txt
5、打印1到100行含某个字符串的行 http://ask.apelearn.com/question/1048
这个需求,其实就是sed指定行范围匹配。
[root@jimmylinux-002 test]# sed -n '1,100{/abc/p}' a.txt
复习sed实例操作的更多相关文章
- sed实例精解--例说sed完整版
原文地址:sed实例精解--例说sed完整版 作者:xiaozhenggang 最近在学习shell,怕学了后面忘了前面的就把学习和实验的过程记录下来了.这里是关于sed的,前面有三四篇分开的,现在都 ...
- [转]使用Xcode 4发布App 实例操作
使用xcode 4发布app 实例操作是本文介绍的内容,不多说,我们直接进入话题. 1.iOS Provisioning Portal 和iTunes Connect 没有变,下载与安装.mobile ...
- Flashback Drop实例操作
1.Flashback DropFlashback Drop 是从Oracle 10g 开始出现的,用于恢复用户误删除的对象(包括表,索引等), 这个技术依赖于Tablespace Recycle B ...
- 文本处理sed常用操作
文本处理sed常用操作 linux sed (stream editor) is a Unix utility that parses and transforms text, using a sim ...
- 第11章:sed进阶操作
第11章:sed进阶操作 sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法 sed命令行格式为 ...
- 058——VUE中vue-router之实例操作新闻列表单页面应用与路由别名的使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 040——VUE中组件之组件间的数据参props的使用实例操作
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 034——VUE中表单控件处理之使用vue控制radio表单的实例操作
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- php5.4以上 mysqli 实例操作mysql 增,删,改,查
<?php //php5.4以上 mysqli 实例操作mysql header("Content-type:text/html;charset=utf8"); $conn ...
随机推荐
- Office 2019 Word表格无法跨页重复标题行
Office 2019 Word表格无法跨页重复标题行 今天使用Word设置表格枫叶重复标题行,死活无法实现 右键属性设置还是直接点击重复标题行设置,表格整个跳转到下一页去了 然后百度了解决方案是在[ ...
- Codeforces 游记
早就对这个比赛平台有所耳闻(事实上,之前打过一场div2惨的一批……)今天去打了一场div3. 首先还是吐槽一下这个毛子时区的比赛时间,从十点三十五到零点三十五……这种时间要不是在家根本没法打嘛…… ...
- MIT线性代数:18.行列式及其特性
- Ubuntu18.04 安装在VMware 14中无法全屏问题解决
现象:在安装完Ubuntu18.04后发现在虚拟机中不能全屏,安装Vmware Tools后还是无法解决,修改分辨率亦不成功. 原因:WAYLAND限制 解决方法:取消ubuntu中的显示设备WAYL ...
- 使用ASP.NET Core 3.x 构建 RESTful API - 2. 什么是RESTful API
1. 使用ASP.NET Core 3.x 构建 RESTful API - 1.准备工作 什么是REST REST一词最早是在2000年,由Roy Fielding在他的博士论文<Archit ...
- PHP微信授权登录用于多个域名的方法
PHP微信授权登录用于多个域名的方法appid和 回调地址换下就好了 <pre><!DOCTYPE html><html lang="en">& ...
- windows中修改IP映射的位置
windows中修改IP映射的位置 置顶 2018年08月05日 14:42:44 wangxiaolong0 阅读数:1473 在安装linux之后,发现windows不能通过映射来访问linu ...
- C#怎么实现文件下载功能的四种方法
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Secu ...
- hdu 1083 Courses (最大匹配)
CoursesTime Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Su ...
- nyoj 773-开方数 (pow)
773-开方数 内存限制:64MB 时间限制:1000ms 特判: No 通过数:3 提交数:8 难度:3 题目描述: 现在给你两个数 n 和 p ,让你求出 p 的开 n 次方. 输入描述: 每组数 ...