#!/bin/bash
#模板表改动验证
MINPARAMS=2
if [ $# -lt "$MINPARAMS" ]
then
echo "This script needs at least $MINPARAMS command-line arguments!"
echo "distmp oldfile newfile"
echo "output file is dis.csv"
exit 1
fi
diff "$1" "$2" | awk '
{
FS = "/t"
OFS = "/t"
#删除
if(NF >= 2 && /^</)
{
gsub(" ","/t", $1)
gsub("<","del", $1)
#<换del了,所以在第5个开始了。
del[substr($1,5)] = $0
}
else if(NF >= 2 && /^>/)
{
gsub(" ","/t", $1)
#改动
if(substr($1,3) in del)
{
#>换成chg之前,还是第3个开始
delete del[substr($1,3)]
gsub(">","chg", $1)
chg[substr($1,5)] = $0
}
#添加
else
{
gsub(">","add", $1)
add[substr($1,5)] = $0
}
}
}
END{
for(k in del)
{
print del[k]
}
for(k in add)
{
print add[k]
}
for(k in chg)
{
print chg[k]
}
}' &> dis.csv
1.cvs
id | name | realres | isvalid | res |
地图id | 地图名称 | 辅助实际路径 | 是否允许进入 | 资源路径 |
99999 | 测试地图 | MAP_01_004 | 1 | MAP_01_004 |
1001 | 炎天城 | MAP_01_001 | 1 | MAP_01_001 |
1002 | 幻想梦境 | MAP_01_002 | 1 | MAP_01_002 |
1003 | 孤雪城 | MAP_01_003 | 1 | MAP_01_003 |
1004 | 镜花城 | MAP_01_004 | 1 | MAP_01_004 |
1005 | 归夜城 | MAP_01_005 | 0 | MAP_01_005 |
2.cvs
id | name | realres | isvalid | res |
地图id | 地图名称 | 辅助实际路径 | 是否允许进入 | 资源路径 |
99999 | 测试地图 | MAP_01_004 | 1 | MAP_01_004 |
1001 | 炎天城 | MAP_01_001 | 1 | MAP_01_001 |
1002 | 幻想梦境 | MAP_01_05 | 1 | MAP_01_002 |
1004 | 镜花城 | MAP_01_004 | 1 | MAP_01_004 |
1005 | 归夜城 | MAP_01_005 | 0 | MAP_01_005 |