用新的配置文件来更新旧的配置文件

有键值对类型的配置文档,现有新的配置项在新的文件中收录,要求更新原有的及添加没有的配置项到旧的文件中,使用shell更新如下:

#!/bin/bash
>  createLine
cp oldFile mediate        #mediate是一个中间文件,用来保存每次修改的状态
while read line; do
    key=${line%:*}
    value=${line#*:}
    if [[ `grep "$key" oldFile` ]]; then        #lodFile是旧的配置项文件
        sed -i "/$key/s:.*$/: $value/" mediate
    else
        echo $line >> createLine
    fi
done < newFile
cat createLine >> mediate                                                

 

posted @ 2020-09-18 07:51  小阿里  阅读(222)  评论(0)    收藏  举报