Linux下通过sed命令对kv方式的配置文件进行修改
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,sed是unix下的面向字符流的编辑器,即stream editor, 它是面向行的,以行为单位进行处理,同时,sed是非交互式的,一旦执行便要处理完整个文件。日常后台服务配置文件多以key-valu
千家信息网最后更新 2025年01月23日Linux下通过sed命令对kv方式的配置文件进行修改
sed是unix下的面向字符流的编辑器,即stream editor, 它是面向行的,以行为单位进行处理,同时,sed是非交互式的,一旦执行便要处理完整个文件。
日常后台服务配置文件多以key-value的方式存在,例如ini文件、toml文件或一些自定义配置文件,当我们某些情况下需要编写自动化脚本对配置文件进行更改的时候,我们可以通过shell的sed命令进行正则匹配快速修改,十分简单快捷,减少很多"高级语言"编写的繁琐,下面主要列出两种比较常见的配置变更情况和命令参考例子:
用于测试的配置文件 test.conf
$ cat test.conf max.connections = 100test.log_path = "/tmp/test.log"fsync=on
值带引号的方式
#!/bin/bashCONF=test.confset_key_value() { local key=${1} local value=${2} if [ -n $value ]; then #echo $value local current=$(sed -n -e "s/^\($key = '\)\([^ ']*\)\(.*\)$/\2/p" $CONF) # value带单引号 if [ -n $current ];then echo "setting $CONF : $key = $value" value="$(echo "${value}" | sed 's|[&]|\\&|g')" sed -i "s|^[#]*[ ]*${key}\([ ]*\)=.*|${key} = '${value}'|" ${CONF} fi fi}set_key_value "max.connections" "1024"set_key_value "test.log_path" "/data/logs/test.log"
值不带引号的方式
CONF=test.confset_key_value() { local key=${1} local value=${2} if [ -n $value ]; then #echo $value local current=$(sed -n -e "s/^\($key = \)\([^ ']*\)\(.*\)$/\2/p" $CONF) # value不带单引号 if [ -n $current ];then echo "setting $CONF : $key = $value" value="$(echo "${value}" | sed 's|[&]|\\&|g')" sed -i "s|^[#]*[ ]*${key}\([ ]*\)=.*|${key} = ${value}|" ${CONF} fi fi}set_key_value "fsync" "off"
总结
以上所述是小编给大家介绍的Linux下通过sed命令对kv方式的配置文件进行修改,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
文件
配置
方式
引号
命令
情况
处理
高级
繁琐
交互式
例子
单位
可以通过
同时
后台
字符
常见
时候
是非
服务配置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
sql数据库恢复图文
软件开发服务销售清单
如何写软件开发市场情况分析预测
网络安全学试题及答案
芝罘区微信公众号软件开发推荐
做个网站需要多大服务器
dota国内没有服务器吗
九江网络安全资讯网络安全培训
数据库独立性优点
如何对数据库取出的部分字段加密
山西优府网络技术有限公司
闵行区软件开发专业服务
软件开发中心需要做柜员吗
苹果会有未受信任软件开发者
杨浦区项目数据库服务费
物理引擎和服务器的关系
查数据库配置
数据库技术的新应用
运行安全服务器
软件开发的经济可行性分析怎么写
网络安全大赛和电竞在一所学校吗
数据库课程设计答辩问题
session保存数据库
无尽之海服务器在哪里
游戏服务器处理器计划如何设置
电子软件开发的名称
襄阳市网络安全周2017
小喇叭下载软件开发
服务器多重网络设置
浙江网络安全与信息化工作