linux命令三剑客之 sed

root@zko-laptop:/home/zko# cat a.log

device=eth0

bootproto=static

ipaddr=192.168.1.101

netmask=255.255.255.0

gateway=192.168.1.1

 

root@zko-laptop:/home/zko# sed '2a type=Ethernet' a.log //a增加

device=eth0

bootproto=static

type=Ethernet

ipaddr=192.168.1.101

netmask=255.255.255.0

gateway=192.168.1.1

 

root@zko-laptop:/home/zko# sed '3i type=Ethernet' a.log //i 插入

device=eth0

bootproto=static

type=Ethernet

ipaddr=192.168.1.101

netmask=255.255.255.0

gateway=192.168.1.1

 

root@zko-laptop:/home/zko# sed 's/eth0/eth1/g' a.log //替换

device=eth1

bootproto=static

ipaddr=192.168.1.101

netmask=255.255.255.0

gateway=192.168.1.1

 

root@zko-laptop:/home/zko# sed '4,5d' a.log //d 删除

device=eth0

bootproto=static

ipaddr=192.168.1.101

 

root@zko-laptop:/home/zko# sed '/ipaddr/a type=Ethernet' a.log //匹配 增加

device=eth0

bootproto=static

ipaddr=192.168.1.101

type=Ethernet

netmask=255.255.255.0

gateway=192.168.1.1

 

root@zko-laptop:/home/zko# sed '/^ipaddr/d' a.log //匹配 删除

device=eth0

bootproto=static

netmask=255.255.255.0

gateway=192.168.1.1

 

root@zko-laptop:/home/zko# ls

1 a.txt fontconfig mirror.c 模板 文档 桌面

2 bb.txt linux1.docx Ubuntu One 视频 下载

a.log examples.desktop linux.txt 公共的 图片 音乐

root@zko-laptop:/home/zko# mkdir sc

root@zko-laptop:/home/zko# vi sc.sh

root@zko-laptop:/home/zko# vi a.l

root@zko-laptop:/home/zko# vi a.log

root@zko-laptop:/home/zko# sed -f sc.sh a.log //脚本命令执行

device=eth0

ibootproto=static

ipaddr=192.168.1.101

netmask=255.255.255.0

gateway=192.168.1.1

root@zko-laptop:/home/zko# sed 's/192/182/;s/static/dymic/' a.log //多命令执行

device=eth0

ibootproto=dymic

 

ipaddr=182.168.1.101

 

netmask=255.255.255.0

gateway=182.168.1.1

 

root@zko-laptop:/home/zko# sed -e 's/192/182/' -e 's/static/dymic/' a.log //多命令执行

device=eth0

ibootproto=dymic

 

ipaddr=182.168.1.101

 

netmask=255.255.255.0

gateway=182.168.1.1

 

------------------------------------------------------

root@zko-laptop:/home/zko# cat a.log

<html>

<title>First title</title>

<body>hello the world!<body> //care

</html>

1---------------------------------

root@zko-laptop:/home/zko# sed 's#<body>$#</body>#g' a.log

<html>

<title>First title</title>

<body>hello the world!</body>

</html>

 

2--------------------------------

root@zko-laptop:/home/zko# cat sc.sh

#this is a test

/body/{s//\/body/2

}

 

root@zko-laptop:/home/zko# sed -f sc.sh a.log

<html>

<title>First title</title>

<body>hello the world!</body>

</html>

 

3-----------------------

root@zko-laptop:/home/zko# sed 's#body#/body#2g' a.log //多处值时固定某处替换

<html>

<title>First title</title>

<body>hello the world!</body>

</html>

----------------------------------------------

 

 

------------------------------------------------------

root@zko-laptop:/home/zko# cat a.log

<html>

<title>First title</title>

<body>

h1Helloh1

h2Helloh2

h3Helloh3

</body>

</html>

 

内容:第一个h1,h2,添加<>,第二个h1,h2,添加</>

 

 

root@zko-laptop:/home/zko# cat sc.sh

#this is a test

/h[0-9]/{

s//\<&\>/1

s//\<\/&\>/2

}

 

root@zko-laptop:/home/zko# sed -f sc.sh a.log

<html>

<title>First title</title>

<body>

<h1>Hello</h1>

<h2>Hello</h2>

<h3>Hello</h3>

</body>

</html>

------------------------------------------------------------

 

-----------------------------------------------------------------

root@zko-laptop:/home/zko# cat aa.log

Name:zko

Email:1226621194

Name:llm

Email;89489489

 

root@zko-laptop:/home/zko# cat sc.sh

#this is a test

#n

/Name/{

N

L

}

 

root@zko-laptop:/home/zko# sed -f sc.sh aa.log

Name:zko Email:1226621194

Name:zko

Email:1226621194

Name:llm Email;89489489

Name:llm

Email;89489489

</body>

</html>

 

root@zko-laptop:/home/zko# sed '/.*/N;L' aa.log

Name:zko Email:1226621194

Name:zko

Email:1226621194

Name:llm Email;89489489

Name:llm

Email;89489489

 

root@zko-laptop:/home/zko# sed '/.*/N;L' aa.log -n

Name:zko Email:1226621194

Name:llm Email;89489489

--------------------------------------

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值