复习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 ...
随机推荐
- 图片瀑布流,so easy!
什么是图片瀑布流 用一张花瓣网页的图片布局可以很清楚看出图片瀑布流的样子: 简单来说,就是有很多图片平铺在页面上,每张图片的宽度相同,但是高度不同,这样错落有致的排列出 n 列的样子很像瀑布,于是就有 ...
- 相关推导式-Python
列表.’字典等推导式 #利用zip()函数同时给多个变量赋值 a = [1,2,3,4,5] b = [4,5,6,7,8] c = [9,2,3,4,0] l = [[1,2],[3,4]] for ...
- [BZOJ2821][Luogu4135] 作诗
由于BZOJ这题要contact lydsy2012@163.com,所以就放个洛谷的传送门(我木有BZOJ权限号啊0.0) 诶?这不是莫队裸题?? 等等--这题强制在线欸,没办法莫队了,肿么破? 之 ...
- 【ObjectC—浅copy和深copy】
一.OC设计copy的目的 为了能够从源对象copy一个新的对象副本,改变新对象(副本)的时候,不会影响到原来的对象. 二.实现copy协议 OC提供了两种copy方法:copy和mutableCop ...
- 在linux用ueditor遇到的问题
在使用ueditor时,遇到很多问题.最大问题是就是服务器返回出错 最让人头疼的是preview没有任何信息.之前也找过很多的资料,很多资料都没有提到修改controller.php文件中error_ ...
- Linux JDK 安装与配置
一.下载 JDK 官网链接:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 系 ...
- php sublime常用插件
php sublime常用插件 1 Sublime Text的默认设置是不开启显示编码的,如果想开启,可通过菜单Perference → Settings – User,在打开的配置文件里 ,在大括号 ...
- containerd 与安全沙箱的 Kubernetes 初体验
作者 | 易立 阿里云资深技术专家 containerd 是一个开源的行业标准容器运行时,关注于简单.稳定和可移植,同时支持 Linux 和 Windows. 2016 年 12 月 14 日,Do ...
- poj 1679 The Unique MST (次小生成树(sec_mst)【kruskal】)
The Unique MST Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 35999 Accepted: 13145 ...
- markdown总结 (webstrom快捷键)
# 在HbuilderX中写markdown(WebStrom快捷键配置)0. 一些快捷键和鼠标操作:1. ctrl+shift+↑ 当前行或者选中的块整体向上移动 ↓同理2. 向两侧扩大选择:A ...