性能测试时,可能会将环境改来改去,每次测试时,配置文件不一样,可能会导致测试失败。

假设有一份正确的配置文件为zoo.cfg.template,测试环境的配置文件为zoo.cfg

那么如何对比以上两者,找出zoo.cfg中的配置错误呢

下述代码应该可以

#!/bin/bash
#by hzwuboxiao

cat $1 | while read line
do
    key=$(echo $line | sed -e 's/\(.*\)=\(.*\)/\1/g')
    if [ -z "$key" ]; then continue
    fi
    value=$(echo $line | sed -e 's/\(.*\)=\(.*\)/\2/g')
    value_correct=$(grep $key $2 | sed -e 's/\(.*\)=\(.*\)/\2/g')
    if [ "$value"x != "$value_correct"x ];then
       echo $(grep $key $1;grep $key $2)
    fi
done