码迷,mamicode.com
首页 > 系统相关 > 详细

linux中sed学习小结

时间:2015-02-17 23:45:12      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:linux sed

sed行处理工具

1、显示文件中匹配行

cat tmp.txt|sed -n ‘/匹配字符正则/p‘ (-n是不打印全部文件)

2、显示文件第几行

cat tmp.txt|sed -n ‘1p‘ --第一行--

cat tmp.txt|sed -n ‘1,3p‘ --一到三行--

3、替换文件中字符

cat tmp.txt | sed ‘s/ee/ff/‘ 或者 sed ‘s/ee/ff/‘ tmp.txt --将tmp.txt文件中每行第一个匹配的ee替换为ff,不改变原文件--

cat tmp.txt | sed ‘s/ee/ff/g‘ 或者 sed ‘s/ee/ff/g‘ tmp.txt --将tmp.txt文件中,全部ee替换为ff,不改变原文件--sed ‘s/ee/ff/‘ tmp.txt > tmp2.txt --将tmp.txt文件中ee替换为ff,不改变原文件,新生成一个新的tmp2.txt文件--

4、指定行替换

cat tmp.txt |sed ‘3,5s/ee/ff/‘ --将文件中3到5行替换ee为ff--

5、匹配行的替换

cat tmp.txt | sed ‘/^w/s/ee/ff/‘ --将tmp.txt文件中,以w开头行中的ee替换为ff--

cat tmp.txt | sed ‘/^w/,/^x/s/ee/ff/‘ --将tmp.txt文件中,以w开头到x开头之间的行的ee替换为ff--

6、批量重命名文件名例有文件:

aa.txt bb.txt cc.txt 将其重命为aa.jpg bb.jpg cc.jpg

ls |sed ‘s/\(.*\)\.txt/mv \1\.txt \1\.jpg/‘|sh

\( )\为内存空间,将匹配的aa bb cc记录下来,\1为内存空间的第一个匹配生成mv的命令代码,通过sh执行--


linux中sed学习小结

标签:linux sed

原文地址:http://ql0722.blog.51cto.com/4353164/1614750

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!