脚本学习之路之----我要熟悉awk, sed, rpm 工具

在自己没有必要探索的地方,吸取前辈们的经验就好了

谢谢以下几位博主

SED 工具使用介绍:

http://blog.csdn.net/zg_hover/article/details/1804481#comments


AWK 工具

http://blog.sina.com.cn/s/blog_6d09b5750100vx24.html                                                                    //该网页包括三个工具的知识,建议学习


RPM 工具:

http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/08/2203153.html


在他们的基础上自己试一遍

在以下的使用中 '' 单引号内的数字可以为一个区域 a,b 表示 a~b    在内容编辑中也可加入换行符(\n)等

常用符号
^ 锚定行的开始 如:/^sed/匹配所有以sed开头的行。  
$ 锚定行的结束 如:/sed$/匹配所有以sed结尾的行。  
. 匹配一个非换行符的字符 如:/s.d/匹配s后接一个任意字符,然后是d。
* 匹配零或多个字符
\ 锚定单词的结束,如/love\>/匹配包含以love结尾的单词的行。 x\{m\} 重复字符x,m次,如:/0\{5\}/匹配包含5个o的行。
x\{m,\} 重复字符x,至少m次,如:/o\{5,\}/匹配至少有5个o的行。 x\{m,n\} 重复字符x,至少m次,不多于n次,如:/o\{5,10\}/匹配5--10个o的行>。

a
sed '1a222' file  #表示读取文件file 中的第一行,并在其后添加一行"222"   //add

c
sed '1c222' file  #用222改动file 中第一行为222    //change

d/D     //功能区分不明确  
sed '1,3d'  file

i
sed '1i123' file #在当前行前面插入文本

s
sed 's/pre/now/g' file  #g替换文件中所有 pre 为 now, 如果不加g, 则替换每行中的第一个

n
sed -n ’s/^test/mytest/p’ file  #(-n)选项和p标志一起使用表示只打印那些发生替换的行

sed 's/^dzk/&mytest/p' file  #会把所有的以dzk开头的行的dzk后追加mytest 如: dzk11 替换为dzkmytest11

sed ’s#10#100#g’ file #所有跟在s后的符号(不管什么字符)都会理解成本来的'/',作用还是替换文件中所有的10为100

sed -n '/test/,/check/p' file #打印所有在test和check之间的内容

sed -n ’5,/^test/p’ file #打印从第5行开始到以test开头的内容

sed '/test/, /check/s/^/haha/' #file #将文件中从test 到 check的行之间的行在每行的开始添加haha

sed '/test/r tmp' file  #查找file中的带有test的一行(会在所有匹配的行后),并且在该行后面加入tmp文件中所有内容

sed '/test/w tmp' file  #查找file中所有带有test的行,然后将其写到tmp文件中


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值