Linux20180502 六周第四次课(5月2日)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux20180502 六周第四次课(5月2日)相关的知识,希望对你有一定的参考价值。

 六周第四次课(5月2日)
复习 
扩展
打印某行到某行之间的内容技术分享图片http://ask.apelearn.com/question/559 

sed转换大小写 技术分享图片http://ask.apelearn.com/question/7758 

sed在某一行最后添加一个数字技术分享图片http://ask.apelearn.com/question/288 

删除某行到最后一行 技术分享图片http://ask.apelearn.com/question/213


打印1到100行含某个字符串的行 技术分享图片http://ask.apelearn.com/question/1048 



打印文件中特定的某行到某行之间的内容

例如:有个文件test的内容如下:
ert
fff
**
[abcfd]
123
324
444
[rty]
**
fgfgf
怎么能截取
[abcfd]
123
324
444
[rty]
这一部分出来呢?


复习一下sed

sed '/匹配的内容/' 文件名

sed -rn '/(abcfd)/,/(rty)/'p test.txt 

sed -n '/\[abcfd\]/,/\[rty\]/p' test.txt

技术分享图片



sed 如何转换大小写字母

sed中,使用\u表示大写,\l表示小写

1. 把每个单词的第一个小写字母变大写:
sed 's/\b[a-z]/\u&/g' filename


sed 's/\b[a-z]/\u&/g' test.txt
技术分享图片



2. 把所有小写变大写:
sed 's/[a-z]/\u&/g' filename

sed 's/[a-z]/\u&/g' test.txt



技术分享图片


3. 大写变小写:
sed 's/[A-Z]/\l&/g' filename


sed 's/[A-Z]/\l&/g' test.txt 

技术分享图片


sed在文件中某一行最后添加一个数字

sed 's/\(^a.*\)/\1 12/' test.txt 在a开头的行后面添加12

技术分享图片


sed删除某关键字的下一行到最后一行



如何使用sed打印1到100行包含某个字符串的行

sed -n '1,20{/44/p}' test.txt 

多少行就算没有达到也可以。

匹配44

技术分享图片

以上是关于Linux20180502 六周第四次课(5月2日)的主要内容,如果未能解决你的问题,请参考以下文章

九周第四次课(2月26日)

Linux学习笔记第一周第四次课(1月25日)

Linux20180423五周第四次课(4月23日)

一周第四次课(12月14日)

Linux学习笔记第二周第四次课(2月1日)

Linux学习笔记第二周第四次课(2月1日)