Chinaunix首页 | 论坛 | 博客
  • 博客访问: 393808
  • 博文数量: 138
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1620
  • 用 户 组: 普通用户
  • 注册时间: 2013-03-10 16:55
个人简介

当你比别人优秀一点点,别人会嫉妒你。当你比别人优秀很多,别人会羡慕你。

文章分类

全部博文(138)

文章存档

2016年(2)

2015年(2)

2014年(15)

2013年(119)

我的朋友

分类: LINUX

2013-04-25 13:31:42

今天写个脚本,要使用sed 的c 命令把文件的某一行替换为y。结果发现有问题。

描述: 待处理的文件是个空文件,也就是里面有0行,我想把这个文件第i行替换为y,没有达到效果。

分析:sed的机制是,读取待处理文件的一行,判断是否在范围内,如果是,按照命令进行处理,如过不是,处理下一行。

假设我的命令是  sed -i -e '100c\y'  file

我的file文件只有80行,那么sed会依次提取80行,但是他们的地址都不是地址100,都不处理。然后就结束处理。
我所认为的 如果第100行不存在,那么会添加一行,内容为y。这个从sed的实现机制上,就是不可能的,我这个要求是无解的。


done!
阅读(1268) | 评论(0) | 转发(0) |
0

上一篇:sed和awk中使用shell变量

下一篇:shell tips --2

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