【发布时间】:2010-12-09 04:07:00
【问题描述】:
基本上,我通过从表的列中获取值来创建 XML 文件。 我正在从 shell 脚本(ksh,如果重要的话)启动一个AWK 脚本,如下所示:
SQL_RESULT=`sqlplus -s ${CONNECT_STRING} << EOF
${SQLPLUS_SETTINGS}
select customer_id from GD9_GENTH_CUST_SUBSCR;
exit;
EOF`
FILE_LIST=`echo $SQL_RESULT|sed -e 's/\n/''/g'`
echo $FILE_LIST|awk -f awk.file
AWK 脚本 awl.file 包含:
BEGIN {
print "<?xml version=\"1.0\" encoding=\"UTF-8\"?><GenTransactionHandler xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"><EntityToPublish>\n<Entity type=\"C\" typeDesc=\"Customer level\"><TargetApplCode>UHUNLD</TargetApplCode><TrxName>GET_CUST_DATA</TrxName>"
}
{
print "<value>"$1"</value>"
}
END
{
print "</Entity>\n</EntityToPublish></GenTransactionHandler>"
}
当我运行脚本时,它给了我一个 AWK 错误。
这有什么问题?
【问题讨论】:
-
-1 表示没有给出错误信息。
-
@Peter Mortensen:我认为 Wikipedia 链接对于 awk 和 ksh 等众所周知的东西是不必要的。
标签: unix shell scripting sed awk