|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
要多动手,不要怕什么搞坏了怎么办,你不搞坏,不去动手,就永远不会有收获,既然你在linux中是自由的,那就发挥自己的权利;
awk于1977年出身,往年36岁本命年,sed比awk年夜2-3岁,awk就像林mm,sed就是宝玉哥哥了。以是林mm跳了个Topless,他的哥哥sed坐不住了,也必定要出来抖一抖。
sed全名叫streameditor,流编纂器,用程序的体例来编纂文本,相称的hacker啊。sed基础上就是玩正则形式婚配,以是,玩sed的人,正则表达式一样平常都对照强。
一样,本篇文章不会说sed的全体工具,你能够参看sed的手册,我这里次要仍是想和人人合作一下那些从手机指缝间或马桶里流走的工夫,用这些工夫来进修一些工具。固然,接上去的仍是要靠人人本人双手。
用s命令交换
我利用上面的这段文本做演示:
1
2
3
4
5
6
7
8
9
$catpets.txt
Thisismycat
mycatsnameisbetty
Thisismydog
mydogsnameisfrank
Thisismyfish
myfishsnameisgeorge
Thisismygoat
mygoatsnameisadam
把个中的my字符串交换成HaoChen’s,上面的语句应当很好了解(s暗示交换命令,/my/暗示婚配my,/HaoChen’s/暗示把婚配交换成HaoChen’s,/g暗示一行上的交换一切的婚配):
1
2
3
4
5
6
7
8
9
$sed"s/my/HaoChens/g"pets.txt
ThisisHaoChenscat
HaoChenscatsnameisbetty
ThisisHaoChensdog
HaoChensdogsnameisfrank
ThisisHaoChensfish
HaoChensfishsnameisgeorge
ThisisHaoChensgoat
HaoChensgoatsnameisadam
注重:假如你要利用单引号,那末你没举措经由过程’如许来本义,就有双引号就能够了,在双引号内能够用”来本义。
再注重:下面的sed并没有对文件的内容改动,只是把处置事后的内容输入,假如你要写回文件,你可使用重定向,如:
1
$sed"s/my/HaoChens/g"pets.txt>hao_pets.txt
或利用-i参数间接修正文件内容:
1
$sed-i"s/my/HaoChens/g"pets.txt
在每行最后面加点工具:
1
2
3
4
5
6
7
8
9
$seds/^/#/gpets.txt
#Thisismycat
#mycatsnameisbetty
#Thisismydog
#mydogsnameisfrank
#Thisismyfish
#myfishsnameisgeorge
#Thisismygoat
#mygoatsnameisadam
在每行最初面加点工具:
<p>1
2
3
4
5
6
7
8
9
$seds/$/---/gpets.txt
Thisismycat---
mycatsnameisbetty---
Thisismydog---
mydogsnameisfrank---
Thisismyfish---
<p> |
|