Mac下通过shell脚本修改properties文件

通过shell脚本替换属性文件中的某行记录


假设有如下属性文件 demo.properties


user.name=test

user.password=123456


...............................

需求:先需要通过shell 脚本将 user.name 和 user.password 的value值替换为实际需要的用户名和密码,

将可以通过如下方式实现:


sed -i "s#^user.name=.*#user.name=用户名#g"  path/demo.properties

sed -i "s#^user.password=.*#user.password=密码#g"  path/demo.properties


这样demo属性文件中的内容即被替换掉了。

将上述sed两行放入.sh脚本中后,执行的时候却报错 ,参考如下链接

http://stackoverflow.com/questions/7648328/getting-sed-error

在-i后面加个“” ,即可,完整的脚本内容如下:

#!/bin/sh


sed -i "" "s#^user.name=.*#user.name=admin#g"  demo.properties
 
sed -i "" "s#^user.password=.*#user.password=000000#g"  demo.properties
demo.properties是要修改的properties文件,由于该文件和脚本在同一目录下,所以此处直接写名称即可,若不在同一目录下,需要写完整的目录

参考地址:http://blog.csdn.net/wangmuming/article/details/19605281
原文地址:https://www.cnblogs.com/hsx514/p/4656008.html