LinuxSir.cn,穿越时空的Linuxsir!

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

请教sed文本替换问题[基本解决]

[复制链接]
发表于 2004-3-5 10:07:01 | 显示全部楼层 |阅读模式
我想使用sed来替换一行文本。
书上说的是生成一个sed脚本文件。用这个文件去处理目标文件。
请问能不能用一个命令直接就处理亚。
不用再生成一个sed脚本文件。
谢谢
发表于 2004-3-5 11:58:49 | 显示全部楼层
see below:
sed script:
cat test.sed
s/abc/ABC/g
run:
  1. sed -f test.sed filename
复制代码
in command:
  1. sed 's/abc/ABC/g' filename
复制代码
 楼主| 发表于 2004-3-5 14:32:23 | 显示全部楼层
我表达得有点问题,您可能理解错了
其实我的意思是这样的。
原来的文本文件里有一行形如: INTERNET=success
我想把它改成INTERNET=fail。
但是原来的内容到底是INTERNET=fail还是INTERNET=success不一定。
所以用您说的那种方法不可以。
:)
我现在是新生成了一个sed脚本文件。
内容如下
!/bin/sed
/INTERNET/ c\
INTERNET=fail
我的意思是有没有方法可以用命令的形式来实现这个
发表于 2004-3-5 14:39:44 | 显示全部楼层
:sorry
  1. /home/javalee:str="This INTERNET=success etc."
  2. /home/javalee:echo $str|sed 's/\(INTERNET=\)[a-zA-Z]\{1,\}/\1fail/g'
  3. This INTERNET=fail etc.
  4. /home/javalee:
复制代码
是这个意思吗?
 楼主| 发表于 2004-3-5 14:55:49 | 显示全部楼层
差不多:)
要修改的是一个文本文件内的一行。
先grep一下再接上你的脚本就应该可以了。
我自己试一下。
谢谢你的帮助。

另外,您能不能推荐几本好一点的shell教程。
我手上有一本Unix Linux SHELL编程指南的电子版。
还有其他得好一点的么??
发表于 2004-3-5 15:11:10 | 显示全部楼层
可以到书店去转转,;) 我推荐<<unix shell实例精解>>,中国电力出版社出版,我感觉还可以
发表于 2004-3-5 18:18:16 | 显示全部楼层
数据库,c语言,嵌入式系统,linux发布

兄弟的爱好还挺广泛的,在下专业为电子信息工程,最近就在开发嵌入式系统(arm开发板+linux),不知道兄弟经验如何?
发表于 2004-3-5 18:19:11 | 显示全部楼层
最初由 zysno1 发表
差不多:)
要修改的是一个文本文件内的一行。
先grep一下再接上你的脚本就应该可以了。
我自己试一下。
谢谢你的帮助。

另外,您能不能推荐几本好一点的shell教程。
我手上有一本Unix Linux SHELL编程指南的电子版。
还有其他得好一点的么??

自然就是O'relly的Learning the Bash Shell啦。
 楼主| 发表于 2004-3-5 18:46:44 | 显示全部楼层
我对底层的东西说一窍不通也不为过分。
我所做的嵌入式主要是x86平台的。
只能算是准嵌入式。:(
都是一些裁减后的最小系统之类的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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