Chinaunix首页 | 论坛 | 博客
  • 博客访问: 46806
  • 博文数量: 25
  • 博客积分: 930
  • 博客等级: 准尉
  • 技术积分: 257
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-25 08:59
文章分类

全部博文(25)

文章存档

2010年(6)

2009年(18)

2008年(1)

我的朋友
最近访客

分类:

2010-09-25 15:23:38

:g/s1/s/s2/s3/g
第一个g表示对每一个包括s1的行都进行替换,第二个g表示对每一行包括s1的行所有的s2都用s3替换
s表示替换,s2是要被替换的字符串,他可以和s1相同(如果相同的话用//代替),s3是替换字符串
d G 删除直到工作缓存区结尾的内容 shirft+g
 
 
计算的3种方法:
tmp=` expr $2 + 1 `
tmp=$(( $1 + 6 ))
tmp=` “echo $1+4”|bc `
 
 
date –d ‘+n day’ “+%Y%m%d”       (可以得到你天后的日期,格式为YYYYMMDD)
 
 
sed : 数据是一条一条进入 sed脚本的,一条记录处理完,下一条数据在进行处理。
 
每一条数据都是以最新的形式让下一个sed命令处理的。
 
 s/pig/cow/g   
s/cow/horse/g
 
经过处理后  文件中的pig都换成horse了  中间产生cow了,又被替换了。
 
SED的匹配模式
 
s/pig/cow/g 匹配所有行。
/zhang/s/pig/cow/g 匹配zhang的行。
/zhang/,/li/s/pig/cow/g 匹配zhang行到li的行
1,/li/s/pig/cow/g 行号 和 模式匹配确定范围
 
对一行数据进行多行操作,注意花括号独占一行后面不带空格
/zhang/,/li/ {
s/pig/cow/
s/cow/horse/
}
 
判断两个文件不同之处
diff  testfile  newfile
testfile独有的用< 指出
newfile 独有的用〉指出
 
基本格式:
 [address]s/pattern/replancement/flags
 
flags是:
n 1到512间的一个数字,表示对本模式中指定模式的第N次出现的情况进行替换
g  对出现的所有情况进行更改(模式空间) 没有g时只对第一次出现进行替换
p 打印模式空间的内容
w file 将模式空间的内容写到文件file中
 
如果没有提供address 用pattern 进行匹配。
 
s/*/\
/2
用\ 反斜杠替换每行上的第二个制表符  反斜杠后面不可以有空格
 
 
 
 
 
 
阅读(658) | 评论(0) | 转发(0) |
0

上一篇:C++ 抽象类,虚函数

下一篇:瞎写

给主人留下些什么吧!~~