码迷,mamicode.com
首页 > 其他好文 > 详细

sed 命令的增加 删除 修改 查询

时间:2017-08-16 23:12:46      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:命令   sed   增加   

1.1sed查询

1.1.1根据行号查询

 

Last login: Tue Aug 15 19:46:48 2017 from10.0.0.1

 

[root@oldboyedu ~]# cat>person.txt<<EOF

> 101,oldboy,CEO

> 102,zhangyao,CTO

> 103,Alex,COO

> 104,yy,CFO

> 105,feixue,CIO

> EOF

1.1.1.1 显示第二行

[root@oldboyedu ~]# sed -n "2p" person.txt

102,zhangyao,CTO

1.1.1.2 显示最后一行

[root@oldboyedu ~]# sed -n ‘$p‘ person.txt

105,feixue,CIO

1.1.1.3 显示第一行到第四行

[root@oldboyedu ~]# sed -n ‘1,4p‘ person.txt

101,oldboy,CEO

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

1.1.2正则

1.1.2.1 显示出文件中包含oldboy yy的行

[root@oldboyedu ~]# sed -n ‘/oldboy|yy/p‘ person.txt

[root@oldboyedu ~]# sed -nr ‘/oldboy|yy/p‘ person.txt

101,oldboy,CEO

104,yy,CFO

1.1.2.2 显示这个文件的第1行到第4

[root@oldboyedu ~]# sed -n ‘/101/,/104/p‘ person.txt

101,oldboy,CEO

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

1.1.2.3 Alex行到yy

[root@oldboyedu ~]# sed -n ‘/Alex/,/yy/p‘ person.txt

103,Alex,COO

104,yy,CFO

1.1.2.4 查找第一行   五行

[root@oldboyedu ~]# sed -n ‘1p;3p;5p‘ person.txt

101,oldboy,CEO

103,Alex,COO

105,feixue,CIO

 

1.2sed增加


1.2.1增加单行文本

1.2.1.1 cat

[root@oldboyedu ~]# cat >>person.txt <<EOF

> 106,lidao,UFO

> 107,bingbing,CEO

> EOF

1.2.1.2  

 

1.2.1.3 sed的命令追加

[root@oldboyedu ~]# sed ‘2a oldboyedu.m‘ person.txt

101,oldboy,CEO

102,zhangyao,CTO

oldboyedu.m

103,Alex,COO

104,yy,CFO

105,feixue,CIO

106,lidao,UFO

107,bingbing,CEO

 

[root@oldboyedu ~]# sed ‘$a 106,lidao\n107,bingbing,CEO‘ person.txt

101,oldboy,CEO

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

106,lidao

107,bingbing,CEO

 

[root@oldboyedu ~]# sed ‘$a 106\n107‘ person.txt

101,oldboy,CEO

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

106,lidao,UFO

107,bingbing,CEO

106

107

 

1.3sed删除

1.3.1删除

[root@oldboyedu ~]# sed ‘/oldboy/d‘ person.txt

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

106,lidao,UFO

107,bingbing,CEO

 

1.3.2排除

[root@oldboyedu ~]# grep -v "oldboy" person.txt

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

106,lidao,UFO

107,bingbing,CEO

1.3.3排除或取反

[root@oldboyedu ~]# awk ‘!/oldboy/‘ person.txt

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

106,lidao,UFO

107,bingbing,CEO

 

1.3.4sed取反(!)

[root@oldboyedu~]# sed -n ‘/oldboy/!p‘ person.txt

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

106,lidao,UFO

107,bingbing,CEO

1.4替换

1.4.1文本替换

[root@oldboyedu ~]# sed ‘s#[0-9]#oldboy#‘ person.txt

oldboy01,oldboy,CEO

oldboy02,zhangyao,CTO

oldboy03,Alex,COO

oldboy04,yy,CFO

oldboy05,feixue,CIO

oldboy06,lidao,UFO

oldboy07,bingbing,CEO

[root@oldboyedu ~]# sed ‘s#[0-9]#oldboy#g‘ person.txt

oldboyoldboyoldboy,oldboy,CEO

oldboyoldboyoldboy,zhangyao,CTO

oldboyoldboyoldboy,Alex,COO

oldboyoldboyoldboy,yy,CFO

oldboyoldboyoldboy,feixue,CIO

oldboyoldboyoldboy,lidao,UFO

oldboyoldboyoldboy,bingbing,CEO

 

 

[root@oldboyedu-39-nb~]# sed -r ‘s#(oldboy)+#101#‘ person.txt

[root@oldboyedu-39-nb~]# sed -r ‘s#(oldboy)+#101#‘ person.txt

101,oldboy,CEO

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

[root@oldboyedu-39-nb~]# sed -ir.bak ‘s#(oldboy)+#101#‘ person.txt

[root@oldboyedu-39-nb~]# cat person.txt

oldboyoldboyoldboy,oldboy,CEO

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

[root@oldboyedu-39-nb~]# ls -l person.txt*

-rw-r--r-- 1root root 86 Aug 16 12:05 person.txt

-rw-r--r-- 1root root 86 Aug 16 12:03 person.txtr.bak

[root@oldboyedu-39-nb~]#

[root@oldboyedu-39-nb~]# sed -ri.bak ‘s#(oldboy)+#101#‘ person.txt

[root@oldboyedu-39-nb~]# cat person.txt

101,oldboy,CEO

102,zhangyao,CTO

103,Alex,COO

104,yy,CFO

105,feixue,CIO

[root@oldboyedu-39-nb~]# ls -l person.txt*

-rw-r--r-- 1root root 71 Aug 16 12:06 person.txt

-rw-r--r-- 1root root 86 Aug 16 12:05 person.txt.bak


本文出自 “linux基础” 博客,请务必保留此出处http://13131277.blog.51cto.com/13121277/1956767

sed 命令的增加 删除 修改 查询

标签:命令   sed   增加   

原文地址:http://13131277.blog.51cto.com/13121277/1956767

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