Chinaunix
标题:
[sed]使用sed替换匹配行
[打印本页]
作者:
hongfengyue
时间:
2008-09-02 14:15
标题:
[sed]使用sed替换匹配行
大家好,我有一个文件类似下面的内容:
$var1 = "pwd";
$var2 = "asdfasdf";
....
其中我要替换$var1 = 这一行的值为:
$var1 = "asdf";
我使用:
sed 's#$var1 = "pwd";#$var1 = "asdf";#'
这个命令可以替换。
这里有一个问题就是,文本文件中$var1等号后面的值是不确定的,可能是
$var1 = "as";等这样的值,可是我希望不管$var1后面是什么值我都替换成$var1 = "asdf";
请问我要如何做?
谢谢大家!
作者:
ly5066113
时间:
2008-09-02 14:20
sed 's#$var1 = ".*";#$var1 = "asdf";#'
作者:
snake_blue
时间:
2008-09-02 14:57
awk -F '=' '{if($1~/\$var1/) $2="\"asdf\" ;" ; print $0}'
作者:
027xiatian
时间:
2008-09-02 16:11
sed 's/$var1 =.*/$var1 ="asdf"/g' youfile
作者:
snake_blue
时间:
2008-09-02 16:30
原帖由
snake_blue
于 2008-9-2 14:57 发表
awk -F '=' '{if($1~/\$var1/) $2="\"asdf\" ;" ; print $0}'
对不起,原来是要用sed
作者:
hongfengyue
时间:
2008-09-02 16:38
谢谢兄弟们!
刚刚还查到这样一种方式:
sed '/^$var1/c \$var1 = "asdf";'
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2