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

sed工具使用3

时间:2017-06-28 18:59:16      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:ati   一个   gid   sed工具   passwd   ges   png   优化   文件中   

sed的&选型:替换固定字符串

这是对替换的一个优化,在替换时有时还要保留旧的同时在加上一些新的,这时旧的就可以用&来代替不用在重新写一遍,但是&是整体的,如果对旧的一小部分替换则&不适合使用了

例子:在passwd文件中在第一部分也就是用户名加上一些空格符

sed ‘s/[a-z_-]\+/&  /‘  passwd

例子:大小写转换

元字符\u\l是对首字母的转换,\U\L是对一串字符串的转换,其中u是小写转大写l是大写转小写

sed ‘/s[a-z_-]\+/\u&/  passwd

例子:将文件夹下的.txt文件吗转换为大写

ls *.txt| sed ‘s/^\w\+/\U&/‘

\( \)是替换某种(部分)的字符串(\1,\2)

例子:数据筛选

例子获取ip跟前面获取方法不同;

android@android-Latitude-E4300:~$ ifconfig wlan0|sed -n ‘2p‘|sed ‘s/in.*r:\([0-9.]\+\) .*$/ \1/‘
          172.21.214.54
android@android-Latitude-E4300:~$

例子:

获取passwd的USER,UID,GID

技术分享

技术分享

sed 读和写

r:复制制定文件插入到匹配行,对文件不会改变

w:复制匹配行到指定文件里,对目标文件会改变,所以要小心

android@android-Latitude-E4300:~$ sed ‘1r 123.txt‘ abc.txt 
1代表将源文件123.txt插入到目标文件abc.txt的第一行之后

android@android-Latitude-E4300:~$ sed ‘1w abc.txt‘ 123.txt

是将源文件123.txt的第一行写入到目标文件abc.txt中,这是abc.txt里面的内容将会被覆盖,可以不指定几行

sed 提前退出:q

android@android-Latitude-E4300:~$nl passwd | sed -n ‘10q‘ 

打印10行就退出

sed总结

技术分享

sed工具使用3

标签:ati   一个   gid   sed工具   passwd   ges   png   优化   文件中   

原文地址:http://www.cnblogs.com/shamoguzhou/p/7090677.html

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