我有以下文件 a)文件A
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<root xmlns="http://aaa/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema" version="2.0">
<project name="source">
<mapping name="m_Source">
<parameter name="SQL_Query">select * from $$SCHEMA_NAME."$$TABLE_NAME" where $$COL > $$VALUE and $CONDITIONS</parameter>
<parameter name="CONDITIONS">Default</parameter>
</mapping>
</project>
</root>
b)文件b
$$SCHEMA_NAME=test
$$COL=LOAD_DATETIME
$$TABLE_NAME=table1
$$VALUE=1234
我想用文件a中右侧(即test,DATETIME,table1,1234)中提到的值替换$$ SCHEMA_NAME,$$ COL,$$ TABLE_NAME和$$ VALUE的值
感谢您的帮助!
答案 0 :(得分:1)
#!/bin/sh
while read line; do
a=$(echo $line | awk -F'=' '{print $1}')
b=$(echo $line | awk -F'=' '{print $2}')
sed -i "s/$a/$b/" file_a
done < file_b
简要说明,
sed
将file_a中的'a'中的值替换为'b'中的值。