读书人

sed轮换properties文件的值

发布时间: 2012-08-17 02:08:34 作者: rapoo

sed替换properties文件的值
oracle9.properties文件内容如下, 想要将user.name的值dsnew修改成QACDC

jdbc.driver=oracle.jdbc.OracleDriver
jdbc.url=jdbc:oracle:thin:@qa104:1521:QADB
user.name=dsnew
user.pass=dsnew
create.db=true
create.sql=tables.oracle9.sql
update.sql=tables.oracle9.sql.updates
insert.sql=../../config/data.sql.default
block.processing=true
block.begin=begin
block.end=end
block.terminator=/
newline.override=\n


[qa@qa52 db]$ sed -i 's/^user\.name.*/user\.name=QACDC/g' oracle9.properties
[qa@qa52 db]$ cat oracle9.properties
jdbc.driver=oracle.jdbc.OracleDriver
jdbc.url=jdbc:oracle:thin:@qa104:1521:QADB
user.name=QACDC
user.pass=dsnew
create.db=true
create.sql=tables.oracle9.sql
update.sql=tables.oracle9.sql.updates
insert.sql=../../config/data.sql.default
block.processing=true
block.begin=begin
block.end=end
block.terminator=/
newline.override=\n


-i #代表保存修改
^ #^user.name代表以user.name开头的行
注意
user.name中的"." 在正则表达式中有匹配除换行符以外的任意字符的意思,要用"\"来转义, 故写成^user\.name
.* #在正则表达式中表示匹配任意文本

More info, refer to http://deerchao.net/tutorials/regex/regex.htm

读书人网 >操作系统

热点推荐