shell 修改properties文件 键和值都是变量

在shell脚本中,如果你需要根据变量的值来修改properties文件中的键和值,可以这样做:

假设你有以下变量:

 

bash

key_to_change="database.user"
new_value="newusername"

并且你的config.properties文件中有如下内容:

 

properties

# config.properties 文件示例
database.url=jdbc:mysql://localhost:3306/mydb
database.user=oldusername
database.password=somepassword

要将database.user字段替换为新的用户名(即变量new_value的值),你可以使用sed命令,并通过双引号(")包裹命令,以便插入变量的值:

 

bash

sed -i "s/^$key_to_change=.*$/${key_to_change}=${new_value}/" config.properties

这个命令会查找以$key_to_change=开头的行,并将其替换为${key_to_change}=${new_value}。这里需要注意的是,由于key_to_change可能包含特殊字符如.,所以在sed表达式中直接引用它时需格外小心。

上述命令的效果是将config.properties文件中的database.user字段更新为newusername。当然,为了确保操作安全,在实际应用中可能还需要额外检查以防止正则匹配错误或其他潜在问题。

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三希

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值