LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 571|回复: 3

如何在一个文本文件中查找一行,用新的文本代替该行[基本解决]

[复制链接]
发表于 2004-4-22 10:37:36 | 显示全部楼层 |阅读模式
例如有一个文件内容如下
asdfasdfasdf
aaaaaaaa bbb
asdfasd

我需要查找和"aaaaaaaa bbb"完全匹配的行,用"aaaaaaaaa"代替
文件的内容结果如下:

asdfasdfasdf
aaaaaaaaa
asdfasd
发表于 2004-4-22 11:16:06 | 显示全部楼层
这样文本替换的例子很多,方法也很多!建议楼主多搜索一下本版.例如:像本例

  1. sed 's/^[a]\{1,\} bbb/somestrings/'
复制代码
发表于 2004-4-22 12:36:57 | 显示全部楼层
亦可用 sed 的 c 命令
发表于 2004-4-22 13:16:29 | 显示全部楼层
use awk:

  1. /home/javalee#cat file
  2. asdfasdfasdf
  3. aaaaaaaa bbb
  4. asdfasd
  5. /home/javalee#awk '/^([a])+ bbb/{num=NR}{if(NR==num){$0="here"}print}' file
  6. asdfasdfasdf
  7. here
  8. asdfasd
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表