+ -
当前位置:首页 → 问答吧 → 特定文本替换

特定文本替换

时间:2011-04-14

来源:互联网

本帖最后由 greenandtree 于 2011-04-14 21:14 编辑

linux系统中我想修改某个文件,文件内容有三行,大致如下:
dynamic modulename1 0   dynamic modulename1 0
dynamic modulename1 1 dynamic modulename1 2
dynamic modulename1 1 dynamic modulename1 2
dynamic modulename1 3  dynamic modulename1 3
由于文件数量较多,请问怎么使用脚本把第二行的dynamic modulename1 1 dynamic modulename1 2
修改成dynamic modulename1 1 dynamic modulename1 1(第三行的不变)

作者: greenandtree   发布时间: 2011-04-14

假设源文件名为:test.txt
编写脚本modify.sed:
#!/bin/sed -f
#replace.sed
2 \c
dynamic modulename1 1 dynamic modulename1 1

执行:modify.sed test.txt

这样应该可以

作者: talang_408   发布时间: 2011-04-14

这样也可以,
sed -i '2s/.*/dynamic modulename1 1 dynamic modulename1 1/' test.txt
如果文字太长,可以用变量替换

作者: talang_408   发布时间: 2011-04-14